[{"data":1,"prerenderedAt":77},["ShallowReactive",2],{"site":3,"config-slug-site":15,"config-product-th-x3d-mapevents":21,"config-public-x3d-mapevents":72},{"site":4,"contact":10,"seo":13,"payment":14},{"name":5,"host":6,"default_locale":7,"locales":8},"X3D Developer","fivem.x3d-developer.com","th",[7,9],"en",{"discord_invite":11,"email":12,"line":12},"https:\u002F\u002Fdiscord.gg\u002FNA5kPVynFv","",{"google_site_verification":12,"bing_site_verification":12},{"bank_name":12,"account_name":12,"account_no":12,"promptpay_id":12},{"site":16,"contact":18,"seo":19,"payment":20},{"name":5,"host":6,"default_locale":7,"locales":17},[7,9],{"discord_invite":11,"email":12,"line":12},{"google_site_verification":12,"bing_site_verification":12},{"bank_name":12,"account_name":12,"account_no":12,"promptpay_id":12},{"id":22,"slug":23,"name":24,"summary":25,"price_thb":26,"license_mode":27,"cover_key":28,"cover_url":29,"category_slugs":30,"tags":33,"latest_version":45,"latest_released_at":46,"published_at":47,"has_docs":48,"config":49,"rent_price_satang":50,"description_md":51,"docs_md":52,"seo_title":53,"seo_description":54,"media":55,"versions":65},"1fb91794-3e8b-4955-bc54-dc6b1491912e","x3d-mapevents","X3D Map Events (อีเวนต์บนแผนที่)","แผงอีเวนต์บนหน้าแผนที่ pause menu ฟรี: ชื่อ + เวลานับถอยหลัง คลิกเพื่อตั้งจุดนำทาง สคริปต์อื่นส่งอีเวนต์เข้ามาได้เหมือนส่งแจ้งเตือน แอดมินสร้างอีเวนต์เองได้",0,"none","public\u002Fproducts\u002Fx3d-mapevents\u002Fcover\u002F8e738f2dfcf0ea2f.jpg","\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-mapevents\u002Fcover\u002F8e738f2dfcf0ea2f.jpg",[31,32],"hud","gameplay",[34,35,36,37,38,39,40,41,42,43,44],"อีเวนต์","อีเวนต์บนแผนที่","แผนที่","จุดนำทาง","นับถอยหลัง","pause menu","map events","event","waypoint","ฟรี","free","1.0.3","2026-10-12T17:13:20.327337Z","2026-10-12T04:21:56.480796Z",true,"public",null,"แผงอีเวนต์บนหน้าแผนที่ (pause menu) ใช้ฟรี เปิดแผนที่แล้วเห็นทันทีว่าตอนนี้มีอีเวนต์อะไร เหลือเวลาเท่าไร คลิกเดียวตั้งจุดนำทางไปได้เลย\n\nเหมาะกับเมืองทุกแนว (school \u002F community \u002F RP) ใช้ได้ทั้ง ESX และ standalone\n\n---\n\n## ฟีเจอร์\n\n- [+] ตั้งค่าง่าย ปรับได้หมดใน config หรือตั้งผ่านเว็บได้เลย\n- [+] แผงโผล่เฉพาะตอนเปิด pause menu ปิดแผนที่แล้วหาย ไม่กินจอตอนเล่น\n- [+] แสดงชื่อ + เวลานับถอยหลัง เหลือน้อยตัวเลขเป็นสีแดง หมดเวลาหายเอง\n- [+] คลิกอีเวนต์ที่มีพิกัดเพื่อตั้งจุดนำทาง คลิกซ้ำเพื่อยกเลิก\n- [+] อีเวนต์ที่มีพิกัดได้ blip ชื่อเดียวกัน ปิดได้ถ้าสคริปต์ต้นทางมี blip แล้ว\n- [+] ตั้งจำนวนแถว ตำแหน่ง ขนาดแผง และเวลาที่ตัวเลขเป็นสีแดงได้\n- [+] สคริปต์อื่นส่งอีเวนต์เข้ามาด้วย export ฝั่ง server (ทุกคนเห็น) หรือ client (คนเดียว)\n- [+] แอดมินสร้างอีเวนต์จากเมนูแอดมินได้ อีเวนต์ของแอดมินอยู่ต่อหลังรีสตาร์ท\n- [+] ต่อกับ X3D Selldrug ให้แล้ว ผู้รับซื้อรายใหญ่ขึ้นแผงเองพร้อมเวลา\n- [+] ข้อความไทย \u002F อังกฤษ เปลี่ยนที่ Config.Locale\n\n---\n\n## ต้องมี\n\n- ไม่ต้องลงอะไรเพิ่ม ใช้ได้ทั้ง ESX และ standalone\n- `x3d_adminpanel` (ไม่บังคับ ใช้สร้างอีเวนต์จากแผงแอดมิน)\n","## การติดตั้ง\n\n1. วางโฟลเดอร์ `x3d_mapevents` ใน `resources\u002F`\n2. เพิ่มใน `server.cfg` **ก่อน** สคริปต์ที่ส่งอีเวนต์เข้ามา:\n\n```\nensure x3d_mapevents\n```\n\nไม่มีฐานข้อมูล ไม่ต้องลงอะไรเพิ่ม เปิด pause menu ตอนมีอีเวนต์ แผงจะโผล่มุมล่างซ้าย\n\n## ตั้งค่า (`config.lua`)\n\n| ค่า | ค่าเริ่มต้น | ทำอะไร |\n|---|---|---|\n| `Config.Locale` | `'th'` | ภาษา `'th'` \u002F `'en'` |\n| `Config.MaxRows` | `5` | แถวสูงสุด เรียงตามเวลาที่จะหมดก่อน |\n| `Config.HotSeconds` | `300` | เหลือน้อยกว่านี้ (วินาที) ตัวเลขเป็นสีแดง |\n| `Config.Position` | `{ left = 28, bottom = 175 }` | ระยะจากมุมซ้ายล่าง (พิกเซลบนจอสูง 1080) ค่าเริ่มต้นอยู่เหนือแถบสเกลของแผนที่ |\n| `Config.Scale` | `0.75` | ขนาดแผง |\n| `Config.Clickable` | `true` | คลิกแถวเพื่อตั้ง\u002Fยกเลิกจุดนำทาง (แผนที่ยังลาก\u002Fซูมได้) `false` = แผงอ่านอย่างเดียว นำทางผ่านรายการ blip ของเกม |\n| `Config.Blip` | `{ sprite = 38, colour = 5, scale = 0.9, shortRange = false, flash = false }` | blip ค่าเริ่มต้นของอีเวนต์ที่มีพิกัด |\n| `Config.WaypointRadius` | `75.0` | จุดนำทางห่างจากอีเวนต์ไม่เกินนี้ (เมตร) = แถวนั้นขึ้น \"ตั้งจุดนำทางแล้ว\" |\n| `Config.AdminSave` | `true` | อีเวนต์ที่แอดมินสร้างอยู่ต่อหลังรีสตาร์ท |\n| `Config.MaxDuration` | 7 วัน | อีเวนต์ยาวสุด กันพิมพ์ผิด |\n| `Config.Debug` | `false` | `true` = คำสั่ง `\u002Fmapevents_test` เพิ่มอีเวนต์ตัวอย่าง (เห็นคนเดียว) |\n\n## ส่งอีเวนต์จากสคริปต์อื่น\n\n```lua\n-- server: ทุกคนเห็น (คนที่เข้าเซิร์ฟทีหลังก็เห็น)\nexports.x3d_mapevents:Add({\n    id = 'my_event',                                -- id เดิม = แทนที่ของเดิม\n    title = { th = 'ผู้รับซื้อรายใหญ่', en = 'Big Buyer' }, -- หรือข้อความเดียว\n    sub = { th = 'ปิดใน', en = 'Closes in' },         -- บรรทัดรอง (ไม่ใส่ก็ได้)\n    icon = 'drug',          -- star flag crown fire money market car drug alert clock หรือ URL รูป\n    color = 'amber',        -- amber red violet green blue\n    duration = 15 * 60,     -- วินาที หรือใส่ endsAt = unix time แทน\n    coords = vector3(x, y, z), -- ไม่ใส่ = แสดงแค่ชื่อกับเวลา\n    blip = false,           -- false = ไม่สร้าง blip (สคริปต์ต้นทางมีอยู่แล้ว) หรือ { sprite, colour, scale, flash }\n})\nexports.x3d_mapevents:Remove('my_event')\nexports.x3d_mapevents:Has('my_event')\n\n-- client: เห็นคนเดียว (เช่น คูลดาวน์ของงาน)\nexports.x3d_mapevents:AddLocal({ id = 'cooldown', title = 'ทำงานได้อีกครั้ง', duration = 300 })\nexports.x3d_mapevents:RemoveLocal('cooldown')\n```\n\nหมดเวลาแล้วหายเองทั้งแผงและ blip ถ้าสคริปต์นี้รีสตาร์ท อีเวนต์ที่สคริปต์อื่นส่งมาจะหาย (ของแอดมินอยู่ต่อ)\n\n## แผงแอดมิน X3D (ไม่บังคับ)\n\nถ้าเซิร์ฟมี `x3d_adminpanel` จะมีเมนู \"อีเวนต์บนแผนที่\": ดูอีเวนต์ที่กำลังแสดง สร้างอีเวนต์ (ชื่อไทย\u002Fอังกฤษ เวลาเป็นนาที ใช้ตำแหน่งที่ยืน ไอคอน) ต่อเวลา +10 นาที และลบ\n\n## ต่อกับ X3D Selldrug\n\nX3D Selldrug 1.2.4 ขึ้นไป (ในไฟล์ `addons\u002Fhooks\u002Fserver.lua` ของ Selldrug)ส่ง event ผู้รับซื้อรายใหญ่เข้ามาเองผ่าน `Hooks.OnEventBuyer` ไม่ต้องตั้งค่าอะไร\n\n## ปัญหาที่พบบ่อย\n\n| อาการ | แก้ |\n|---|---|\n| ชื่อ blip ภาษาไทยเป็นสี่เหลี่ยม | ต้องโหลดไฟล์ `stream\u002Ffont4thai.gfx` ที่มากับสคริปต์ ห้ามลบโฟลเดอร์ `stream` |\n| แผงทับเมนูอื่นของ pause | แผงโผล่ทุกแท็บของ pause menu ปรับตำแหน่งที่ `Config.Position` |\n| เวลาไม่ตรง | เวลาอิงนาฬิกาของเซิร์ฟเวอร์ (unix time) ตั้งเวลาเครื่องเซิร์ฟเวอร์ให้ตรง |\n","สคริปต์อีเวนต์บนแผนที่ FiveM นับถอยหลัง นำทาง ฟรี","สคริปต์ FiveM ฟรี แสดงอีเวนต์บนหน้าแผนที่ pause menu พร้อมเวลานับถอยหลัง คลิกตั้งจุดนำทาง ส่งอีเวนต์จากสคริปต์อื่นด้วย export ใช้ได้ทั้ง ESX และ standalone",[56,59,61,63],{"kind":57,"url":58},"image","\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-mapevents\u002Fmedia\u002Fac0176609c9cc720.png",{"kind":57,"url":60},"\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-mapevents\u002Fmedia\u002F42298f3372f0c07d.png",{"kind":57,"url":62},"\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-mapevents\u002Fmedia\u002Fb969df54e669d387.png",{"kind":57,"url":64},"\u002Fapi\u002Fv1\u002Fmedia\u002Fpublic\u002Fproducts\u002Fx3d-mapevents\u002Fmedia\u002F6608b5dd3d0f7840.png",[66,68],{"version":45,"released_at":46,"changelog_md":67},"### Changed\n\n- Store images now carry English captions for the English store page",{"version":69,"released_at":70,"changelog_md":71},"1.0.1","2026-10-12T04:21:53.768127Z","### Fixed\n\n- Store package: the resource folder is named `x3d_mapevents`",{"slug":23,"version":45,"latest_version":45,"files":73,"options":50},[74],{"path":75,"content":76},"config.lua","-- ===============================================================\n--  X3D Map Events — ตั้งค่า \u002F settings\n--  แผงอีเวนต์บนหน้าแผนที่ (pause menu): ชื่อ + เวลานับถอยหลัง + blip นำทาง\n--  Event panel on the pause-menu map: name + countdown + a blip to set a waypoint\n-- ===============================================================\n\nConfig = {}\n\n-- ===== ภาษา \u002F Language =====\n\nConfig.Locale = 'th'                  -- ภาษา 'th' | 'en' \u002F language 'th' | 'en'\n\n\n-- ===== แผง \u002F Panel =====\nConfig.MaxRows = 5                    -- แถวสูงสุดบนแผง (เรียงตามเวลาที่จะหมดก่อน) \u002F most rows shown, soonest-ending first\nConfig.HotSeconds = 300               -- เหลือน้อยกว่านี้ (วินาที) ตัวเลขเป็นสีแดง \u002F under this many seconds the timer turns red\n-- ระยะจากมุมซ้ายล่างของจอ หน่วยพิกเซลบนจอสูง 1080 (จออื่นย่อขยายตามความสูงให้เอง)\n-- ค่าเริ่มต้นวางเหนือแถบสเกลกับชื่อพื้นที่ของแผนที่เกม\n-- Offset from the bottom-left corner in pixels of a 1080-high screen (other sizes scale by height)\n-- The default sits above the map's own scale bar and zone name\nConfig.Position = { left = 28, bottom = 175 }\nConfig.Scale = 0.75                   -- ขนาดแผง (1.0 = ใหญ่สุด) \u002F panel size (1.0 = largest)\n-- true = คลิกแถวที่มีพิกัดเพื่อตั้ง\u002Fยกเลิกจุดนำทาง (แผนที่ยังลาก\u002Fซูมได้ระหว่างนั้น)\n-- true = click a row with a spot to set \u002F clear the waypoint (the map still pans and zooms)\nConfig.Clickable = true\n\n\n-- ===== blip \u002F Blip =====\n-- อีเวนต์ที่มีพิกัดได้ blip ชื่อเดียวกัน จึงขึ้นในรายการ blip ขวาของแผนที่: ↑↓ เลือก แล้ว Enter = จุดนำทาง\n-- สคริปต์ที่มี blip ของตัวเองอยู่แล้วส่ง blip = false ได้ (แผงยังรู้ตำแหน่งไว้บอกระยะ)\n-- Events with coords get a blip with the same name, so they appear in the map's blip list: arrow keys + Enter = waypoint\n-- Scripts that already draw their own blip can pass blip = false (the panel still knows the spot for the distance)\n-- blip ค่าเริ่มต้นของอีเวนต์ที่มีพิกัด (shortRange = เห็นเมื่ออยู่ใกล้, flash = กะพริบ) \u002F Default blip for events with coords (shortRange = only when near, flash = blinking)\nConfig.Blip = { sprite = 38, colour = 5, scale = 0.9, shortRange = false, flash = false }\nConfig.WaypointRadius = 75.0          -- จุดนำทางห่างจากอีเวนต์ไม่เกินนี้ (เมตร) = แถวนั้นขึ้น \"ตั้งจุดนำทางแล้ว\" \u002F a waypoint within this many metres marks that row as navigated\n\n\n-- ===== แอดมิน \u002F Admin =====\nConfig.AdminSave = true               -- อีเวนต์ที่แอดมินสร้างจากแผง x3d_adminpanel อยู่ต่อหลังรีสตาร์ท \u002F admin-made events (x3d_adminpanel) survive a restart\nConfig.MaxDuration = 7 * 24 * 3600    -- อีเวนต์ยาวสุด (วินาที) กันพิมพ์ผิด \u002F longest allowed event in seconds (typo guard)\n\n-- ===== ดีบัก \u002F Debug =====\n\nConfig.Debug = false                  -- true = \u002Fmapevents_test เพิ่มอีเวนต์ตัวอย่าง (เห็นคนเดียว) \u002F adds sample events for you only\n",1792316306745]