roblox object event
v1.1.0
@rbxts/object-event
แพ็คเกจ NPM สำหรับ Roblox-TS นี้ช่วยให้นักพัฒนาสามารถใช้กิจกรรมที่กำหนดเองสำหรับคลาสที่กำหนดเองโดยไม่ต้องหันไปใช้ BindableEvents
สิ่งนี้น่าจะเป็นประโยชน์อย่างยิ่งสำหรับโครงการที่พึ่งพากระบวนทัศน์ OOP สำหรับห้องสมุดและส่วนประกอบเกมอื่น ๆ อย่างมาก
โมดูลสามารถใช้ได้ทั้งในสคริปต์ Lua (U) บริสุทธิ์ (ผ่าน Rojo หรือวิธีอื่น ๆ ) หรือกับ Roblox-TS (รวมถึงการตรวจสอบประเภทเวลา)
/////// Module.ts ///////
import ObjectEvent from "@rbxts/object-event"
const event = new ObjectEvent < [ number , String , Vector3 ] > ( )
event . Connect ( ( id , msg , position ) => {
// We can safely assume that:
// id is a number
// msg is a string
// position is a Vector3
} )
export event
/////// Waiter.server.ts ///////
import { event } from "./Module"
event . Fire ( 10 , "oof" , new Vector3 ( 1 , 2 , 3 ) ) // all good
event . Fire ( 10 , "oof" ) // will not compile!
export { }
เพื่ออนุญาตให้มีการโต้แย้งทุกประเภทของหมายเลขใด ๆ :
let event = new ObjectEvent < [ ... unknown ] > ( )
ObjectEvent
Connect(f)
- f
เป็นฟังก์ชั่นที่ใช้อาร์กิวเมนต์ที่พิมพ์ตามนั้นและส่งคืน void
ส่งคืน ObjectEventConnection
Wait()
- ให้เธรดจนกว่าเหตุการณ์จะถูกไล่ออก ส่งคืนค่าที่พิมพ์ตามนั้นFire(...)
- ยิงเหตุการณ์ อาร์กิวเมนต์จะต้องเป็นตัวเลขและประเภทเดียวกันEvent
- อินเทอร์เฟซ RBXScriptSignal
ที่สนับสนุน Connect()
และ Wait()
ในกรณีที่คุณต้องการใช้เป็น blindableEventSubscribedConnections
- อาร์เรย์ของ ObjectEventConnection
S กับการเชื่อมต่อทั้งหมดที่กำลังรับฟังเหตุการณ์ ObjectEventConnection
Disconnect()
- ตัดการเชื่อมต่อจากเหตุการณ์Reconnect()
- เปลี่ยนการตัดการเชื่อมต่อIsConnected()
- ส่งคืน true
ถ้าการเชื่อมต่อกำลังฟังเหตุการณ์ (นี่คือไม่ใช่การตัดการเชื่อมต่อ () 'ed), false
เป็นอย่างอื่นEvent
- ObjectEvent
ที่เกี่ยวข้องกับการเชื่อมต่อนี้Listener
- ฟังก์ชั่นที่เกี่ยวข้องกับการเชื่อมต่อนี้