คู่มือ Pulse Phone

เฟรมเวิร์ก

สำหรับ Pulse Phone 1.4.2อ่าน 8 นาทีอัปเดต

3. ทีละขั้นตอนสำหรับเฟรมเวิร์กของคุณ

โทรศัพท์หาเฟรมเวิร์กของคุณเจอเอง: es_extended, qb-core, qbx_core, ox_core, ND_Core, vrp หรือ core ของ TMC คุณต้องใช้ Config.Framework ใน config/config.lua ก็ต่อเมื่อมีเฟรมเวิร์กทำงานอยู่มากกว่าหนึ่งตัว หรือใช้เฟรมเวิร์กคัสตอม

ภาพรวมเฟรมเวิร์กของคุณ

เฟรมเวิร์ก ตรวจพบจาก ไอเทม ธนาคารและเงินสด ควรรู้
ESX Legacy es_extended Pulse เพิ่มไอเทมของตัวเองลงในตาราง items ของ ESX เอง (อินเวนทอรีเริ่มต้น) บน ox_inventory ให้วางบล็อกที่การตรวจสอบตอนเริ่มแสดง บัญชี ESX บัญชีบริษัทผ่านสคริปต์ society ของคุณ
QBCore qb-core Pulse เพิ่มไอเทมของตัวเองลงใน shared items ของ QBCore เอง (qb-, ps-, lj-inventory) เงินของ QBCore ระดับที่เป็น isboss บริหารบริษัท
Qbox qbx_core (ตัวแทน qb-core ของมันนับเป็น Qbox ไม่ใช่เฟรมเวิร์กที่สอง) วางบล็อก ox_inventory ที่แสดง เงินของ Qbox ใช้ adapter ของ Qbox ไม่ใช้ของ QBCore เด็ดขาด
ox_core ox_core วางบล็อก ox_inventory ที่แสดง บัญชี ox_core ของตัวละคร เงินสดคือ money ของ ox_inventory ไม่มีสถานะเข้าเวร: ทุกคนนับว่าเข้าเวร
ND Core ND_Core วางบล็อก ox_inventory ที่แสดง bank และ cash ของ ND ไม่มีสถานะเข้าเวร ไม่มีบัญชีบริษัท
TMC resource core ของมัน ตรวจจับจาก core object ของ TMC เอง ทุกไอเทมต้องอยู่ในรายการไอเทมของ TMC: การตรวจสอบตอนเริ่มจะแสดงให้ เงินของ TMC ทำงานผ่าน bridge คัสตอม ไม่ต้องตั้งค่าอะไร
vRP 2 vrp ดูหัวข้อ vRP กระเป๋าเงินและธนาคารของ vRP ไม่รองรับ vRP 1 และ fork ต่างๆ
Standalone ไม่มีตัวใดข้างบนทำงานอยู่ ไม่ต้องใช้ ระบบธนาคารของโทรศัพท์เอง สำหรับเซิร์ฟเวอร์ทดสอบหรือเซิร์ฟเวอร์ที่ไม่มีเฟรมเวิร์ก
คัสตอม Config.Framework = 'custom' ผ่าน bridge ของคุณ ผ่าน bridge ของคุณ ดู "เฟรมเวิร์กคัสตอมหรือที่เขียนเอง"

การบังคับเลือกเฟรมเวิร์ก

เซิร์ฟเวอร์ส่วนใหญ่ไม่เคยต้องใช้ ให้บังคับเลือกเฟรมเวิร์กเมื่อบรรทัดตอนเริ่มระบุผิดตัว หรือเมื่อมี core เฟรมเวิร์กสองตัวติดตั้งและทำงานอยู่ เพิ่มหนึ่งบรรทัดใน server.cfg:

server.cfg
setr phone_framework qb
ค่า เฟรมเวิร์ก
esx ESX Legacy (es_extended)
qb QBCore (qb-core)
qbox Qbox (qbx_core)
ox ox_core
nd ND Core (ND_Core)
vrp vRP 2 (vrp)
tmc TMC (core)
standalone ไม่มีเฟรมเวิร์ก: โทรศัพท์ใช้ตัวตนและระบบธนาคารของตัวเอง
custom bridge ของคุณเอง (ดู "เฟรมเวิร์กคัสตอมหรือที่เขียนเอง" ด้านล่าง)
auto เหมือนกับไม่ใส่บรรทัดนี้: Config.Framework เป็นตัวตัดสิน
  • ค่านี้มีผลเหนือ Config.Framework รีสตาร์ทโทรศัพท์หลังจากเปลี่ยน
  • ใช้ชื่อ resource ก็ได้: qbcore, qb-core, qbx_core, es_extended, ox_core คำที่ไม่รู้จักจะถูกปฏิเสธ: การตรวจสอบตอนเริ่มจะแจ้ง และฟีเจอร์เกี่ยวกับเงินจะปิดอยู่
  • qb บนเซิร์ฟเวอร์ที่รัน qbx_core จะใช้ adapter ของ Qbox และ Qbox ก็ตอบในฐานะ QBCore ด้วย
  • ถ้าเฟรมเวิร์กที่คุณบังคับเลือกไม่ได้ start อยู่ โทรศัพท์จะค้างที่หน้าจอ "not ready" จนกว่าจะ start โทรศัพท์จะไม่สลับไปใช้เฟรมเวิร์กอื่นเอง

Multicharacter ใช้ได้กับทุกเฟรมเวิร์ก Config.IdentityScope = 'character' (ค่าเริ่มต้น) ให้แต่ละตัวละครมีโทรศัพท์ของตัวเอง ส่วน 'player' ให้หนึ่งโทรศัพท์ต่อหนึ่งบัญชี เลือกครั้งเดียว: การเปลี่ยนบนเซิร์ฟเวอร์ที่ใช้งานจริงจะทำให้โทรศัพท์ที่มีอยู่ทั้งหมดถูกทิ้งไว้

การจัดการบริษัท (การเข้าเวร พนักงาน การรับสมัคร บัญชีบริษัทในแอป Services) ใช้บริษัทใน Config.Services ใน config/apps.lua ถ้าชื่ออาชีพของคุณต่างจากค่าเริ่มต้น (police, ambulance, mechanic, taxi, fire ...) ให้เพิ่มชื่อของคุณในรายการ job ของบริษัทนั้น ถ้าต้องการเลือกระดับหัวหน้าเอง ให้เพิ่ม bossGrade = <n> ในบริษัทนั้น

ESX Legacy

server.cfg
ensure oxmysql
ensure es_extended
# ... your ESX scripts, inventory, banking ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • ไอเทม: ถ้าใช้อินเวนทอรีเริ่มต้นของ ESX ไม่ต้องทำอะไร โทรศัพท์จะเพิ่มไอเทมลงในตาราง items ของ ESX ตอนเริ่ม และคอนโซลจะบอกว่าเพิ่มตัวไหน มี config/items/esx.sql ให้ถ้าคุณอยากเพิ่มเอง ถ้าใช้อินเวนทอรีอื่น ดูหัวข้อที่ 4
  • เงิน: ธนาคารคือบัญชี bank ของ ESX เงินสดคือบัญชี money
  • ตัวละคร: โทรศัพท์ผูกกับ identifier ของผู้เล่นใน ESX ดังนั้น esx_multicharacter ใช้ได้
  • หัวหน้า: ระดับที่ชื่อ boss บริหารบริษัท เว้นแต่คุณจะตั้ง bossGrade
  • บัญชีบริษัท: esx_addonaccount / esx_society หรือสคริปต์ธนาคารจากหัวข้อที่ 7

QBCore

server.cfg
ensure oxmysql
ensure qb-core
# ... qb-inventory and your other qb scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • ไอเทม: ไม่ต้องวางอะไร โทรศัพท์จะเพิ่มไอเทมที่ต้องใช้ลงใน shared items ของ QBCore ตอนเริ่ม และคอนโซลจะบอกว่าเพิ่มตัวไหน คัดลอกรูปภาพจาก config/items/images/ ไปที่ qb-inventory/html/images/ การตรวจสอบตอนเริ่มจะระบุชื่อรูปที่ขาดหายไป
  • เงิน: bank และ cash
  • ตัวละคร: citizenid ดังนั้น qb-multicharacter ใช้ได้
  • หัวหน้า: ระดับที่มี isboss = true ในอาชีพของคุณ เว้นแต่คุณจะตั้ง bossGrade
  • บัญชีบริษัท: Renewed-Banking, qb-banking หรือ qb-management รุ่นเก่า
  • Multijob: เมื่อมี ps-multijob ทำงานอยู่ อาชีพอื่นๆ ของผู้เล่นจะแสดงใน Services และแตะครั้งเดียวเพื่อตั้งเป็นอาชีพหลัก

Qbox

server.cfg
ensure oxmysql
ensure qbx_core
ensure ox_inventory
# ... your other Qbox scripts, in Qbox's own order ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • ไอเทม: Qbox ใช้ ox_inventory ซึ่งรับไอเทมจากสคริปต์อื่นไม่ได้ ให้เริ่มเซิร์ฟเวอร์หนึ่งครั้ง: การตรวจสอบตอนเริ่มจะแสดงรายการที่ขาด พร้อมวางลงใน ox_inventory/data/items.lua (หัวข้อที่ 4) รูปภาพไปที่ ox_inventory/web/images/
  • เงิน: bank และ cash ผ่าน qbx_core
  • ตัวละคร: citizenid
  • หัวหน้า: ระดับที่มี isboss = true เว้นแต่คุณจะตั้ง bossGrade
  • Multijob: มีในตัว อาชีพอื่นๆ ของผู้เล่นจะแสดงใน Services
  • qbx_core ตอบในฐานะ qb-core ด้วย ซึ่งเป็นเรื่องปกติ: โทรศัพท์ถือว่าทั้งสองเป็นเฟรมเวิร์กเดียวกัน

ox_core

server.cfg
ensure oxmysql
ensure ox_core
ensure ox_inventory
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • ไอเทม: เริ่มเซิร์ฟเวอร์หนึ่งครั้ง: การตรวจสอบตอนเริ่มจะแสดงรายการที่ขาด พร้อมวางลงใน ox_inventory/data/items.lua (หัวข้อที่ 4) รูปภาพไปที่ ox_inventory/web/images/
  • เงิน: ธนาคารคือบัญชี ox_core ของตัวละคร เงินสดคือไอเทม money ใน ox_inventory
  • ตัวละคร: charId
  • อาชีพ: กลุ่มของ ox_core ไม่มีสถานะเข้าเวร โทรศัพท์จึงเก็บสถานะเข้าเวรเอง การจัดการบริษัท (พนักงาน การรับสมัคร ระดับ) และ valet ไม่มีบน ox_core

ND Core

server.cfg
ensure oxmysql
ensure ox_lib
ensure ND_Core
ensure ox_inventory
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • ตรวจพบเองเมื่อ ND_Core ถูก start ถ้าต้องการบังคับ: setr phone_framework nd
  • ไอเทม: ND ใช้ ox_inventory ให้เริ่มเซิร์ฟเวอร์หนึ่งครั้ง: การตรวจสอบตอนเริ่มจะแสดงรายการที่ขาด พร้อมวางลงใน ox_inventory/data/items.lua (หัวข้อที่ 4)
  • เงิน: bank ของตัวละครใน ND และ cash ของ ND (ox_inventory ทำให้ไอเทม money ตรงกันเสมอ)
  • ตัวละคร: character id ของ ND เบอร์โทรที่แสดงคือเบอร์ของ ND เองถ้าตัวละครมีอยู่
  • อาชีพ: อาชีพและยศของตัวละครใน ND ซึ่ง ND ไม่มีสถานะเข้าเวร ทุกคนจึงนับว่าเข้าเวร การจัดการบริษัท บัญชีบริษัท และ valet ไม่มีบน ND Core
  • การาจ: รถที่เป็นเจ้าของมาจากตาราง nd_vehicles ของ ND

vRP

รองรับเฉพาะ vRP 2 (ไม่ใช่ vRP 1 หรือ fork จากชุมชน) โทรศัพท์โหลด extension เล็กๆ เข้า vRP จาก bridge/frameworks/vrp/ ไม่ต้องคัดลอกอะไร

server.cfg
ensure oxmysql
ensure vrp
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • ไอเทม: ไม่มีไฟล์ไอเทมสำหรับ vRP และ vRP 2 ทำให้ไอเทมใช้กับโทรศัพท์ไม่ได้ ให้คง Config.Item.required = false (ค่าเริ่มต้น) และตั้ง Config.Store.box = false เพื่อให้ร้านส่งมอบโทรศัพท์โดยตรง ผู้เล่นใช้ไอเทมชาร์จด้วย /phonepack และ /phonecable ถ้ามีอินเวนทอรีของ vRP ผู้เล่นต้องพก pulse_magpack และ pulse_cable ดังนั้นให้เพิ่มทั้งสองไอเทมในรายการไอเทมของ vRP หรือตั้ง Config.Charging.enabled = false
  • เงิน: ธนาคารและกระเป๋าเงินของ vRP
  • ตัวละคร: character id ของ vRP
  • อาชีพ: การจัดการบริษัทและ valet ไม่มีบน vRP แอป Garage จะว่างเปล่าจนกว่าคุณจะเชื่อมสคริปต์การาจ

TMC

TMC มีในตัว โทรศัพท์ตรวจจับ core ของ TMC เอง: ไม่ต้องมี resource เพิ่ม และไม่ต้องแก้ config/config.lua (auto, tmc และ custom ใช้ได้ทั้งหมด)

server.cfg
ensure oxmysql
ensure core
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone

การตรวจสอบตอนเริ่มจะแสดง Framework: TMC

  • ไอเทม: เพิ่มไอเทมของ Pulse ลงในรายการไอเทมของ TMC แบบเดียวกับที่คุณเพิ่มไอเทมทั่วไป ชื่อไอเทมคือ phone, pulse_magpack, pulse_magpack_max, pulse_cable, pulse_router, pulse_burner, pulse_buds, pulse_ringlight, pulse_wallet (config/items/tmc.lua มีรายการให้) และสำหรับกล่องของร้าน pulse_phone_box บวกหนึ่งตัวต่อฟินิช (pulse_phone_box_black ...) ชื่อแสดง น้ำหนัก และคำอธิบายอยู่ใน config/items/qb-core.lua และรูปภาพอยู่ใน config/items/images/ ไอเทมที่ไม่อยู่ในรายการจะถูกปฏิเสธ และผู้เล่นจะเห็น "inventory full" แล้วคอนโซลจะระบุชื่อไอเทมนั้น ไอเทมกล่องที่ไม่มีในรายการไม่ทำให้การขายหยุด: ร้านจะส่งมอบโทรศัพท์โดยไม่มีกล่องและแจ้งในคอนโซล ถ้าคุณไม่ต้องการกล่องเลย ให้ตั้ง Config.Store.box = false
  • เงิน: เงินสดของตัวละคร และธนาคารของพวกเขา: resource banking ของ TMC เมื่อทำงานอยู่ (บัญชีส่วนตัวของพวกเขา) หรือไม่เช่นนั้นคือเงินธนาคารของ core ถ้าเลขบัญชีของคุณไม่ได้มีรูปแบบเหมือน BNK123456 ให้ระบุฟิลด์ที่เก็บเลขบัญชีใน config/config.lua: Config.Providers.tmcBankAccount = 'charinfo.account' (ใช้ฟิลด์ของคุณเอง) Wallet จะแสดงขีด ไม่ใช่ตัวเลขที่แต่งขึ้น เมื่ออ่านข้อมูลธนาคารไม่ได้
  • ตัวละคร: citizen id ของ TMC
  • อาชีพ: อาชีพที่เข้าเวรอยู่ (หรืออาชีพแรก) พร้อมระดับและสถานะเข้าเวร
  • เคยใช้ตัวเชื่อม pulse_tmc ชั่วคราว? ลบ ensure pulse_tmc และลบโฟลเดอร์นั้น คอนโซลจะเตือนคุณตราบที่มันยังทำงานอยู่

Standalone (ไม่มีเฟรมเวิร์ก)

server.cfg
ensure oxmysql
ensure pma-voice
ensure screenshot-basic
ensure phone
  • ไอเทม: ไม่ต้องใช้ ผู้เล่นทุกคนมีโทรศัพท์ Reserve และสายชาร์จ
  • เงิน: โทรศัพท์มีระบบธนาคารของตัวเอง ผู้เล่นใหม่เริ่มต้นด้วย 5000 (startingBalance ใน config/apps.lua)
  • ตัวละคร: Rockstar license ของผู้เล่น
  • อาชีพ รถ และบ้าน: โทรศัพท์เก็บข้อมูลของตัวเอง ใส่ข้อมูลได้ด้วยคำสั่งทดสอบในหัวข้อที่ 9

เฟรมเวิร์กคัสตอมหรือที่เขียนเอง

  1. ตั้ง Config.Framework = 'custom' ใน config/config.lua
  2. ให้ตาราง bridge แก่โทรศัพท์ในรูปแบบเหมือน optional-developer-kit/custom_framework_bridge.lua: จะใส่เป็น Config.Providers.custom ใน config/config.lua หรือจาก resource ของคุณเองด้วย exports.phone:RegisterFrameworkBridge(MyBridge) ก็ได้
  3. ต้องมีแค่ GetCharacterId เท่านั้น ถ้าคุณไม่ใส่ฟังก์ชันชื่อ อาชีพ license หรือรายการรถ/บ้าน โทรศัพท์จะทำเหมือนเซิร์ฟเวอร์ของคุณไม่มีข้อมูลนั้น ถ้าคุณไม่ใส่ฟังก์ชันเงินหรือไอเทม การกระทำนั้นจะถูกปฏิเสธ: โทรศัพท์ไม่เคยจ่ายเงินจากธนาคารของตัวเอง แอป Bank จะแสดงก็ต่อเมื่อ bridge ของคุณมี GetBankBalance
  4. ถ้า core ของคุณรีสตาร์ทขณะที่โทรศัพท์ยังทำงานอยู่ ให้เรียก exports.phone:FrameworkRestarted() เมื่อ core พร้อม

bridge/frameworks/custom.lua แสดงว่าโทรศัพท์ใช้ตารางของคุณอย่างไร ถ้าต้องการเชื่อมสคริปต์อื่นที่เขียนเอง (สคริปต์ธนาคารหรือการาจ) ดู optional-developer-kit/custom_provider_template.lua และExports เทมเพลตทั้งสองมาในชุดสำหรับนักพัฒนาแบบเสริม zerodevscripts.com/downloads/PulsePhone-developer-kit.zip ไม่ได้อยู่ในโฟลเดอร์ phone

แปลจากภาษาอังกฤษ หากเนื้อหาในหน้านี้ไม่ตรงกับหน้าภาษาอังกฤษ ให้ยึดหน้าภาษาอังกฤษเป็นหลัก English