cainiaoxp 发表于 2012-2-12 13:09

我在改写一个MOM的脚本的时候CS提示我找不到let……

本人是学C语言的,对于这种basic风格的语言看着很不习惯。
但是……
也不要告诉我这个脚本连let都不认识啊……
还是我用的CS版本有问题?我是1.2.404
顺便把代码贴出来(其实这是MOM的代码,我只是想修改一下,让迷宫不要那么难走而已)
PS:顺便说一下,这是MOM里面那个脑残迷宫房间门的开门脚本。我想把里面那些诸如“此路不通”,“五行结界尚未打破”之类的if语句全删掉。scn 0momMigongDownDoor

long dbg
long iter
long actorNum
long itype
ref actorRef
short allKill
long thiscellactor                ; pluggy array

begin OnActivate
        if (IsActionRef player != 1)
                return
        endif
       
        if eval (0momMigongQuest.curRoute == ar_Null || 0momMigongQuest.eaction == 0 || 0momMigongQuest.nextDoorIndex < 0)
                messagebox "禁止作弊", "ok"
               
                return
        endif
       
        let dbg := 0momMigongQuest.dbg
       
        if eval (0momMigongQuest.curCellUpDoorIndex < 6)
                messagebox "此路不通"
                return
        elseif eval (0momMigongQuest.migongUpDoor == 0)
                messagebox "此门不通"
                return
        elseif eval (0momMigongQuest.migongUpDoor == 2)
                messagebox "此路不通"
                return
        endif
       
        set allKill to 1
        let thiscellactor := aaaMomMigongEnemyGenQuest.thiscellactor
        set actorNum to ArraySize thiscellactor
        set iter to 0
        WHILE (iter < actorNum)
                set actorRef to GetInArray thiscellactor iter
                set itype to getObjectType actorRef
                if (itype == 35)
                        if (actorRef.getdead == 0)
                                set allKill to 0
                        endif
                endif
               
                set iter to iter + 1
        LOOP
       
        if (allKill == 0)
                messagebox "五行结界尚未打破"
                return
        endif
       
        let 0momMigongQuest.curCellUpDoorIndex := 0momMigongQuest.curCellUpDoorIndex - 6
        let 0momMigongQuest.curCellLeftDoorIndex := 0momMigongQuest.curCellLeftDoorIndex - 6
       
        if eval (0momMigongQuest.curRoute == "下")
                if (dbg > 0)
                        printToConsole "走对路了"
                endif
               
                let 0momMigongQuest.nextDoorIndex := 0momMigongQuest.nextDoorIndex - 1
        else
                if (dbg > 0)
                        printToConsole "走错路了"
                endif
               
                let 0momMigongQuest.nextDoorIndex := 0momMigongQuest.nextDoorIndex + 1
                let 0momMigongQuest.curRoute := "上"
        endif
       
        let 0momMigongQuest.curCellWuxingIndex := 0momMigongQuest.curCellWuxingIndex - 6
        let 0momMigongQuest.beforeCell := player.GetParentCell
        ;message "下门进入"
       
        if eval (0momMigongQuest.lastEnter == 1)                ; last is 上
                let aaaMomMigongEnemyGenQuest.needGen := 0
        else
                let aaaMomMigongEnemyGenQuest.needGen := 1
        endif
       
        let 0momMigongQuest.lastEnter := 2                ; 下
       
        let 0momMigongQuest.printdbg := 1
        Activate
end

bluesky404 发表于 2012-2-13 19:35

诺,let是Array功能里面的
不过,那是由OBSE添加的
所以请使用obse启动CS
看这个的情况,你还需要安装有pluggy才能编辑此mod
页: [1]
查看完整版本: 我在改写一个MOM的脚本的时候CS提示我找不到let……