OK論壇

 找回密碼
 註冊
查看: 1142|回復: 4

求NPC腳本「怪物召喚而不重疊」「變數顯示中文字」「持續性的effect特效」

[複製鏈接]
  • TA的每日心情
    開心
    2017-8-14 01:57 AM
  • 簽到天數: 167 天

    連續簽到: 1 天

    [LV.7]常住居民III

    發表於 2015-11-4 19:01:19 | 顯示全部樓層 |閱讀模式
    95積分
    本帖最後由 kevin2562001 於 2015-11-5 09:24 PM 編輯

    大家好,

    最近在製作一個npc主要目的是用來圍毆玩家, 但遇上「怪物召喚而不重疊」和「變數顯示中文字」的問題
    另外有關「持續性的effect特效」也不太熟識, 雖然用timer寫了出來但不知道會不會有其他方法
    故希望有人能提供這幾個部份的範例, 東西寫到同一個npc就可以了

    1. Hercules用
    2. 點擊選項後召喚怪物 1521, 但出現位置不重疊
    3. 怪物會有effect特效 236 (會不斷重複直到死亡)
    4. 使用case 1(放怪), case 2(取消)作選項, 因為腳本之後會有更多選項
    5. npc對話時會隨機顯示「難度」, 已設定rand 1至4 分別為(簡單)(正常)(困難)(極難) <---需跟隨數字顯示相應中文字
    6. npc是會隨機轉換位置, 腳本有使用 getmapxy(.@map$,.@x,.@y,1); 和 movenpc strnpcinfo(0),.@x,.@y;

    感謝


    回復

    使用道具 舉報

  • TA的每日心情
    慵懶
    2018-2-12 10:16 PM
  • 簽到天數: 316 天

    連續簽到: 1 天

    [LV.8]以壇為家I

    發表於 2015-11-4 21:00:01 | 顯示全部樓層
    本帖最後由 Residue 於 2015-11-4 09:09 PM 編輯

    1. //Script by Residue
    2. prontera,156,181,5        script        SpawnMob        100,{
    3. setarray .@talkarray$,"簡單","正常","困難","極難";
    4. mes "^FF0000"+.@talkarray$[rand(3)]+"^000000";
    5. getmapxy(.@map$,.@x,.@y,0);
    6. switch(select("放怪:取消"))
    7. {
    8. case 1:
    9. areamonster .@map$,.@x-5,.@y+5,.@x+5,.@y-5,"--ja--",1521,1;
    10. getmapxy(.@map$,.@x,.@y,1);
    11. movenpc "SpawnMob",.@x-rand(-10,10),.@y-rand(-10,10),rand(7);
    12. break;

    13. case 2:
    14. default:
    15. break;

    16. }
    17. end;
    18. }


    複製代碼
    至於怪物身上要有持續效果的部份
    你可以參考天殺壇主的specialeffect3源碼
    不過怪物死掉的時候   效果還持續著  會造成map斷線  要自行修改或是問天殺壇主怎麼修改

    回復

    使用道具 舉報

  • TA的每日心情
    開心
    2017-8-14 01:57 AM
  • 簽到天數: 167 天

    連續簽到: 1 天

    [LV.7]常住居民III

     樓主| 發表於 2015-11-4 21:57:03 | 顯示全部樓層
    本帖最後由 kevin2562001 於 2015-11-4 10:08 PM 編輯
    Residue 發表於 2015-11-4 09:00 PM
    至於怪物身上要有持續效果的部份你可以參考天殺壇主的specialeffect3源碼
    不過怪物死掉的時候 ...

    effect效果怪物死後會消失
    先感謝回覆!
    回復

    使用道具 舉報

  • TA的每日心情
    開心
    2017-8-14 01:57 AM
  • 簽到天數: 167 天

    連續簽到: 1 天

    [LV.7]常住居民III

     樓主| 發表於 2015-11-4 22:05:58 | 顯示全部樓層
    本帖最後由 kevin2562001 於 2015-11-5 07:09 PM 編輯

    附出目前腳本的簡化版本

    -        script        Mission_Config        -1,{
    OnInit:
            //掉落物
            setarray $@_Mission_Item,501,502,503,504,505;
            setarray $@_Mission_Number,1,2,3,4,5;
            
            //怪物
            setarray $@_Mission_Monster,1521;
            
            set $@MonsterAmount, rand(30,50);
            set $@Level, rand(1,3);
            end;
    }
            
    prontera,50,50,5        script        放怪        50,{        
            getmapxy(.@map$,.@x,.@y,1);
            mes "[放怪]";
            mes "目前等級屬於 = "+$@Level;
            mes "開始後將出現怪物數量 = "+$@MonsterAmount;
                    switch(select("確定","取消")){
                            case 1:        
                                    //放怪部份
                                    close;
                            case 2:
                                    close;
                    }
            
    OnMinute00:
            getmapxy(.@map$,.@x,.@y,1);
            set .@x,rand(1,100);
            set .@y,rand(1,100);
            movenpc strnpcinfo(0),.@x,.@y;
            end;
    }
    回復

    使用道具 舉報

  • TA的每日心情
    慵懶
    2018-2-12 10:16 PM
  • 簽到天數: 316 天

    連續簽到: 1 天

    [LV.8]以壇為家I

    發表於 2015-11-4 22:10:09 | 顯示全部樓層
    kevin2562001 發表於 2015-11-4 09:57 PM
    effect效果怪物死後會消失

    呃  我沒在用hercules  所以不確定是否有其他語法可以加effect在怪物身上

    但我加了specialeffect3  確實可以用  但是怪物死掉GID抓不到的時候map就會當掉了
    回復

    使用道具 舉報

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

    本版積分規則

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

    GMT+8, 2024-4-17 02:34 AM , Processed in 0.060765 second(s), 16 queries , Gzip On.

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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