找回密码
 立即注册
查看: 193|回复: 0

常用 event 触发写法 新老框架对比 笔记

[复制链接]
万物创造者

188

主题

207

回帖

2341

积分
CN币
1 颗


威望
574

贡献
792

UID
1

QQ
QQ

微信Wechat
ahsinsoft

居住地
中国 上海市 杨浦区 定海路街道

发表于 2024-10-4 23:19:19 | 显示全部楼层 |阅读模式
常用 event api 触发写法 新老框架对比 笔记 不定期记录
注:abc123/def456/ghi789 意思是可自定义命名


功能名称 通用写法 新框架写法 备注
玩家说话触发 NL.RegTalkEvent(nil,'abc123') self:regCallback('TalkEvent',Func.bind(self.abc123,self))
创建npcNL.CreateNPC(nil,'abc123')
npcabc = self:NPC_createNormal('NPC名字',图档编号,{x=242,y=88,mapType=0,map=地图编号,direction=方向编号})
此时变量npcabc可获得npc的index
npc弹窗后点按按钮反馈触发Char.SetWindowTalkedEvent(nil,'abc123',player)
self:NPC_regWindowTalkedEvent(npabcc,Func.bind(self.abc123,self))
面向npc触发弹窗Char.SetTalkedEvent(nil,'abc123',player)
self:NPC_regTalkedEvent(darkroomnpc,Func.bind(self.face2npc,self))
角色姿势触发NL.RegCharActionEvent(nil,'abc123')
self:regCallback('CharActionEvent',Func.bind(self.abc123,self))
登入触发1NL.RegLoginEvent(nil,'abc123')self:regCallback('LoginEvent',Func.bind(self.abc123,self))
传送后触发NL.RegAfterWarpEvent(nil,'abc123')self:regCallback('AfterWarpEvent',Func.bind(self.abc123,self))
loop计时器self:regCallback('abc123',Func.bind(self.def456,self))
老lua直接跑Char.SetLoopEvent
itemset.txt道具参数触发NL.RegItemString(nil,'abc123','LUA_use_def456')self:regCallback('ItemString',Func.bind(self.abc123,self),"LUA_use_def456")LUA_init_abc123 LUA_use_abc123 LUA_att_abc123 LUA_det_abc123 LUA_drop_abc123 LUA_prepick_abc123 LUA_pick_abc123
封包触发self:regCallback('ProtocolOnRecv',Func.bind(self.abc123,self),'封包文')
战斗开始触发NL.RegBattleStartEvent(nil,'abc123')self:regCallback('BattleStartEvent',Func.bind(self.abc123,self))
战斗结束触发1NL.RegBattleOverEvent(nil,'abc123')
self:regCallback('BattleOverEvent',Func.bind(self.abc123,self))
还没看到经验结算页就触发,返回battleindex
data/npc/abc123.txt中luac def456触发self:regCallback('ScriptCallEvent',Func.bind(self.ghi789,self))
下线触发NL.RegLogoutEvent(nil,'abc123')
self:regCallback('LogoutEvent',Func.bind(self.abc123,self))
掉线触发NL.RegDropEvent(nil,'abc123')self:regCallback('DropEvent',Func.bind(self.abc123,self))
战斗结束触发2self:regCallback('ResetCharaBattleStateEvent',Func.bind(self.abc123,self))
看到经验结算页触发,返回player/pet
生产制造后触发
NL.RegMergeItemEvent(nil,'abc123')self.abc123= self:regCallback(Func.bind(self.def456,self))
NL.RegMergeItemEvent(nil,self.abc123)
未找到新写法,使用替代写法
封印后触发NL.RegSealEvent(nil,'abc123')
self.abc123 = self:regCallback(Func.bind(self.def456,self)) NL.RegSealEvent(nil,self.abc123)
未找到新写法,使用替代写法
获得经验时触发NL.RegGetExpEvent(nil,'abc123')
self.abc123 = self:regCallback(Func.bind(self.def456,self)) NL.RegGetExpEvent(nil,self.abc123)
未找到新写法,使用替代写法
登入触发2NL.GetLoginPointEvent(nil,'abc123')
self:regCallback('GetLoginPointEvent', Func.bind(self.abc123, self))
一般用于获取、指定定居点
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|CN魔力实验室

GMT+8, 2025-4-27 22:24 , Processed in 0.051254 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表