Project1

标题: 【代码向】用事件注释为事件类插入自定义属性 [打印本页]

作者: 清澈淌漾    时间: 2021-7-11 13:37
标题: 【代码向】用事件注释为事件类插入自定义属性
事件安装方法插一个自写的方法
Game_Event.prototype.setupPageSettings

机制我就简单讲下
事件安装后你可以调到这个事件的执行list

事件备注是一个事件通用的
而注释是事件页单独的
各有用处
///////////////////////////////////
Game_Event.prototype.annProcessing=function()
{
    let data=this.page().list.filter((value,index,a)=>{return value.code === 108;})
    this._proce={}
    let ann=[]
    for(let i=0;i<data.length;i++)
        for(let j=0;j<data.parameters.length;j++)
        {
            let s=data.parameters[j]
            if(s.length>2&&s.substring(0,2)===">=") ann.push(s.substring(2,s.length))
        }

    for (let i=0;i<ann.length;i++) {
        let s=ann.split("|")
        for (let j=0;j<s.length;j++)
        {
            let v=s[j].split(":")
            if(v.length>1)
                this._proce[v[0]]=v[1]

        }
    }
    console.log(this._proce)

}




插入属性后 就可以整花活了
作者: RyanYe    时间: 2021-7-11 22:32
不错啊,这样就可以通过注释简单定义2个值了,一个是lim=1,另一个是bb=1
然后用这些个值就可以为所欲为了呢!

作者: 347780682    时间: 2021-7-12 11:42
牛逼啊  顶一顶技术大佬
作者: RyanYe    时间: 2021-7-12 12:45
对了,这一行能不能换换啊:
if(s.length>2&&s.substring(0,2)===">=")
因为drill的事件注释也是这个开头,会不会有什么冲突啊,改成比如}=行不行啊
作者: 清澈淌漾    时间: 2021-7-12 13:25
RyanYe 发表于 2021-7-12 12:45
对了,这一行能不能换换啊:
if(s.length>2&&s.substring(0,2)===">=")
因为drill的事件注释也是这个开头 ...

drill是 =>
你换什么都行
0,2是第1个字符到第2个  如果注释是这个开头则读取 就是个自定义的规则符
作者: RyanYe    时间: 2021-7-12 13:34
清澈淌漾 发表于 2021-7-12 13:25
drill是 =>
你换什么都行
0,2是第1个字符到第2个  如果注释是这个开头则读取 就是个自定义的规则符 ...

哦对对对,是我搞混了哈哈
还是楼主比较细心呢!

作者: 18772799953    时间: 2022-4-7 20:08
学习一下
作者: zhouhua2022    时间: 2022-8-10 21:32
6666666666




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1