OK論壇

 找回密碼
 註冊
查看: 1479|回復: 6

关于callfunc的几点疑问

 關閉 [複製鏈接]
  • TA的每日心情
    郁悶
    2015-2-17 09:48 AM
  • 簽到天數: 64 天

    連續簽到: 1 天

    [LV.6]常住居民II

    發表於 2014-4-16 10:10:20 | 顯示全部樓層 |閱讀模式
    EA
    私服版號: 3ceam
    問題內容: 腳本問題
    本帖最後由 illuser 於 2014-4-21 10:58 AM 編輯

    关于callfunc脚本和function的几点疑问,希望高人帮忙解答下疑惑,谢谢了。


    1:callfunc是不是只能在脚本末尾进行,如果下面还有执行脚本就会失效?
    我曾经试图写过这样的脚本:
    1. callfunc “itemget”;
    2.          getitem 601;
    3.          end;
    複製代碼
    那么貌似执行callfunc之后就会卡住,下面的脚本运行不了。

    2:callfunc是不是无法在事件npc中执行?(代码为-1形式的事件执行npc)
    我曾试过如果将function中的脚本直接搬进
    -        script        Event        -1,{ }中,就可以执行,但是运用callfunc指令,就不行了……

    3:3ceam中有没有可以单独reload function的指令?
    实在不想用@reloadscript来重新加载全部脚本,爆卡……但是貌似只有reloadnpc……


    評分

    參與人數 1積分 -30 現金 -30 積極性 -30 違規 +1 收起 理由
    goddameit -30 -30 -30 + 1 閒置超過三天

    查看全部評分

    回復

    使用道具 舉報

  • TA的每日心情
    慵懶
    2020-5-9 12:35 PM
  • 簽到天數: 987 天

    連續簽到: 1 天

    [LV.10]以壇為家III

    發表於 2014-4-16 11:31:23 | 顯示全部樓層
    1.
    1. function        script        AAA        {
    2.         dispbottom "Run function AAA";
    3. }


    4. function        script        BBB        {
    5.         dispbottom "Run function BBB";
    6. }

    7. prontera,155,175,5        script        Sample#func        757,{
    8.         callfunc( "AAA" );
    9.         dispbottom "return back from calfunc( "AAA" )";
    10.         callfunc( "AAA" );
    11.         dispbottom "return back from calfunc( "AAA" ) again...";
    12.         callfunc( "BBB" );
    13.         dispbottom "return back from calfunc( "BBB" )";
    14.         end;
    15. }
    複製代碼


    2.
    你寫的是NPC腳本 。。。 不是 FUNCTION 腳本 。。 無法用 callfunc 执行
    只能用 doevent 或 donpcevent

    3.
    把你的 FUNCTION 腳本 放在新的 TEXTFILE 。。用 @loadnpc <filepath> 來overwrite就能了
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    郁悶
    2015-2-17 09:48 AM
  • 簽到天數: 64 天

    連續簽到: 1 天

    [LV.6]常住居民II

     樓主| 發表於 2014-4-16 12:19:05 | 顯示全部樓層
    emistry 發表於 2014-4-16 11:31 AM
    1.

    2.

    &#35874;&#35874;你,后&#20004;&#20010;都&#27979;&#35797;好了,第一&#20010;&#36824;&#27809;太弄明白先去&#35797;&#35797;。
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    無聊
    2013-8-18 12:46 AM
  • 簽到天數: 9 天

    連續簽到: 1 天

    [LV.3]偶爾看看II

    發表於 2014-4-16 16:00:36 | 顯示全部樓層
    善用return即可解決
    1. function        script        BBB        {
    2.         dispbottom "Run function BBB";
    3. return;
    4. }
    複製代碼
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    郁悶
    2015-2-17 09:48 AM
  • 簽到天數: 64 天

    連續簽到: 1 天

    [LV.6]常住居民II

     樓主| 發表於 2014-4-16 16:35:36 | 顯示全部樓層
    andyzxzx123 發表於 2014-4-16 04:00 PM
    善用return即可解決

    唔……我&#36824;是不太明白。
    比如&#35828;下面&#36825;&#20010;&#33050;本:
    1. gon_dun02,246,94,1        script        &#27979;&#35797;#12        143,{

    2. if(getequipid(EQI_ACC_R)==20400 ){

    3. callfunc "fuzhouidenty";

    4. set .@ref,getequiprefinerycnt(EQI_ACC_R);
    5. set .@card2,getequipcardid(EQI_ACC_R,2);
    6. set .@card3,getequipcardid(EQI_ACC_R,3);
    7. set .@card4,getequipcardid(EQI_ACC_R,4);
    8. set .@addpart,wuyonglv1;
    9. delitem 20400,1;
    10. delitem 22677,1;
    11. getitem2 20400, 1, 1, .@ref,0, .@addpart, .@card2, .@card3, .@card4;
    12. close;
    13. }

    14. mes "&#35831;&#23558;&#35013;&#39280;品戴入。";
    15. close;
    16. }

    17. function        script        fuzhouidenty        {

    18. if(countitem(27300)>=1){ set wuyonglv1,27300; }  
    19. if(countitem(27301)>=1){ set wuyonglv2,27301; }
    20. if(countitem(27302)>=1){ set wuyonglv3,27302; }
    21. if(countitem(27303)>=1){ set wuyonglv4,27303; }     
    22. if(countitem(27304)>=1){ set wuyonglv5,27304; }  
    23. if(countitem(27305)>=1){ set wuyonglv6,27305; }  
    24. if(countitem(27306)>=1){ set wuyonglv7,27306; }  
    25. if(countitem(27307)>=1){ set wuyonglv8,27307; }  
    26. if(countitem(27308)>=1){ set wuyonglv9,27308; }  
    27. if(countitem(27309)>=1){ set wuyonglv10,27309; }
    28. }  
    複製代碼
    &#36825;&#20010;return&#35813;放到哪去呢?



    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    擦汗
    2018-9-15 03:18 PM
  • 簽到天數: 842 天

    連續簽到: 1 天

    [LV.10]以壇為家III

    發表於 2014-4-16 19:36:30 | 顯示全部樓層
    illuser 發表於 2014-4-16 04:35 PM
    唔……我&#36824;是不太明白。
    比如&#35828;下面&#36825;&#20010;&#33050;本:&#36825;&#20010;return&# ...

    return 用意=回傳,回到上一層你想做的事情
    所以通常在結束或最後
    如果你有close 那可以替換成close2
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    郁悶
    2015-2-17 09:48 AM
  • 簽到天數: 64 天

    連續簽到: 1 天

    [LV.6]常住居民II

     樓主| 發表於 2014-4-21 10:58:17 | 顯示全部樓層
    汗……在等其他答案&#26102;竟然&#36829;&#35268;了……算了封&#36148;吧。
    回復 支持 反對

    使用道具 舉報

    您需要登錄後才可以回帖 登錄 | 註冊

    本版積分規則

    Archiver|手機版|小黑屋|OK討論區

    GMT+8, 2024-3-29 01:41 AM , Processed in 0.052516 second(s), 24 queries , Gzip On.

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回復 返回頂部 返回列表