【 原 創 】時 間 標 籤 應 用 教 學
本帖最後由 哆啦ˇ 於 2009-11-18 07:26 PM 編輯一直在搜尋 ok論壇的時間控制腳本 似乎沒有得到好的答案
經過 超版主 "天殺" 指導過一篇回覆 得到一些啟發
現在 我將我到處學到的 公佈在這
大家一起分享 一起研究
initnpctimer 命令
初始化NPC計時,執行此命令後,NPC開始從0進行計時。
initnpctimer [];
npc名字可以省略,也可以指定。若省略的話指的就是使用此命令的NPC。
例:initnpctimer "npctimertest";
進行計時的NPC可以使用OnTimerXXXX:標籤來觸發其他指令。
XXXX以毫秒為單位。
例:
OnTimer30000:
announce "30秒過去了",0;
stopnpctimer 命令
停止NPC計時,指定NPC的計時暫停,但計時數值保持暫停前的時刻。
stopnpctimer [];
同樣可用name指定特定的NPC,不指定就是使用該命令的NPC停止計時。
startnpctimer 命令
和stopnpctimer相反的作用,指定的NPC從當前的NPC時刻開始計時。
(注意!不一定是從0開始!和initnpctimer的作用是不一樣的。)
startnpctimer [];
同樣可用name指定特定的NPC
setnpctimer 命令
設定NPC的計時數值。
setnpctimer [,]
例:setnpctimer 20000,"npctimertest";
設定NPC的當前計時數值為指定的tick值。name省略就是執行該命令的NPC的計時數值被設置。
getnpctimer 函數
getnpctimer([,])
例:mes "當前計時數值為:"+getnpctimer (0,"npctimertest");
num=0 返回當前的計時數值
num=1 返回當前的計時狀態(0:停止,1:運行)
num=2 返回OnTimerXXXX標籤的個數
希望對大家有助益 如果牽涉到其他先進達人 已發表過
這裡表示抱歉 並非要故意 重覆發表
我僅是希望跟我一樣求腳本寫作的人 能有個方向 放 上 範 例 會 更 好
回覆 1樓的 bn5656 的帖子
確實放上範例可能會比較能夠讓其他會員明白
另外
這算共用類的教學嗎?
還是有分JA或EA類的?
因為我要歸類到文章整理內 原帖由 海神夜 於 2008-9-21 07:53 AM 發表 http://okayro.com/images/common/back.gif
確實
放上範例可能會比較能夠讓其他會員明白
另外
這算共用類的教學嗎?
還是有分JA或EA類的?
因為我要歸類到文章整理內
這是 共用類的語法
我舉一個私服腳本 部份來說明:
jawaii.gat,245,195,5 script 夏威夷海場ソ人魚管理員 721,{
mes "[夏威夷海場ソ人魚管理員]";
mes "你打到魚了嗎?";
mes "打到魚要賣給我哦";
mes "我會給你好東西的";
mes "補充:下線魚會消失的";
next;
switch(select("我要打魚","我來賣魚","漁場說明")){
case 1:
callfunc "clearfishcount",3;
if ( @feedfish == 1 ) {
mes "[夏威夷海場ソ人魚管理員]";
mes "您不能再餵魚啦";
close;
}
mes "[夏威夷海場ソ人魚管理員]";
if ( $@countfishingman == 0 ) {
mes "現在還沒有人在漁場裡養下小魚苗呢";
mes "你要免費養嗎?";
}
else {
mes "參加人數"+$@countfishingman+"";
mes "您要參加打魚嗎";
}
switch(select("當然了","我來看看的")){
case 1:
if ( $@countfishingman == 0 ) {
announce "[夏威夷海場ソ人魚管理員] "+strcharinfo(0)+" 在漁場放進了新的小魚苗,2分鐘後就能打魚了",16;
set $@countfishingman,$@countfishingman+1;
set @feedfish,1;
initnpctimer "fishtimer";
}
.................................
jawaii.gat,0,0,0 script fishtimer -1,{
OnTimer120000:
if ( $@countfishingman == 1 ) {
set $@fishsource,1;
}
if ( $@countfishingman == 2 ) {
set $@fishsource,2;
}
if ( $@countfishingman == 3 ) {
set $@fishsource,4;
}
if ( $@countfishingman == 4 ) {
set $@fishsource,4;
}
if ( $@countfishingman > 4 ) {
set $@fishsource,5;
}
set $@windblow_fisharea,(rand(3)+1)*10;
if ( $@windblow_fisharea < 10 ) {
mapannounce "jawaii.gat"," 今日微風,祝大家玩的高興",1;
}
else if ( $@windblow_fisharea < 20 ) {
mapannounce "jawaii.gat"," 今日小風,請大家稍微小心",1;
}
else
{
mapannounce "jawaii.gat"," 今日大風,請大家格外小心",1;
}
callfunc "windblow_fisharea";
callfunc "makefish",1;
callfunc "makefish",2;
end;
OnTimer125000:
callfunc "clearfishcount",2;
end;
OnTimer130000:
callfunc "windblow_fisharea";
callfunc "makefish",1;
callfunc "makefish",2;
end;
OnTimer135000:
callfunc "clearfishcount",2;
end;
OnTimer140000:
callfunc "windblow_fisharea";
callfunc "makefish",1;
callfunc "makefish",2;
end;
OnTimer145000:
callfunc "clearfishcount",2;
end;
OnTimer150000:
callfunc "windblow_fisharea";
callfunc "makefish",1;
callfunc "makefish",2;
end;
OnTimer155000:
callfunc "clearfishcount",2;
end;
OnTimer160000:
callfunc "windblow_fisharea";
callfunc "makefish",1;
callfunc "makefish",2;
end;
OnTimer165000:
callfunc "clearfishcount",2;
end;
OnTimer170000:
callfunc "windblow_fisharea";
callfunc "makefish",1;
callfunc "makefish",2;
end;
OnTimer175000:
callfunc "clearfishcount",2;
end;
OnTimer180000:
callfunc "windblow_fisharea";
callfunc "makefish",1;
callfunc "makefish",2;
end;
OnTimer185000:
callfunc "clearfishcount",2;
end;
OnTimer190000:
callfunc "windblow_fisharea";
callfunc "makefish",1;
callfunc "makefish",2;
end;
OnTimer195000:
callfunc "clearfishcount",2;
end;
OnTimer200000:
callfunc "windblow_fisharea";
callfunc "makefish",1;
callfunc "makefish",2;
end;
OnTimer205000:
callfunc "clearfishcount",2;
end;
OnTimer210000:
callfunc "windblow_fisharea";
callfunc "makefish",1;
callfunc "makefish",2;
end;
OnTimer215000:
callfunc "windblow_fisharea";
callfunc "clearfishcount",2;
set $@countfishingman,0;
mapannounce "jawaii.gat"," 打魚活動結束,現在能從新養殖小魚苗了",1;
areawarp "jawaii.gat",255,198,280,218,"jawaii.gat",245,195;
end;
}
initnpctimer "fishtimer";
這是開始時間 啟動 "fishtimer";
fishtimer 是時間npc
OnTimer120000:
.
.
.
OnTimer215000:
是啟動 每段時間去執行 你設定的動作
回覆 4樓的 bn5656 的帖子
原來如此那一 一這算共用類的吧!?
JA、EA皆可? 如果時間這個語法 專研學會後,
製作出來的腳本因該很有趣 也很精采..
只是我連 廣播小喇叭那個 X分鐘內不可重複發言 還摸不清 ..
哈哈 這語法真是我致命傷:Q
謝謝大大分享與解釋 觀念很重要= =不動還是要想辦法搞懂Orz 確實
放上範例可能會比較能夠讓其他會員明白
另外
這算共用類的教學嗎?
還是有分JA或EA類的?
因為我要歸類到文章整理內 寫的粉詳細
會再來研究的
謝謝~~~thx 無論如何,也要謝謝你,相信你打這編字也相當不容易
謝謝你
頁:
[1]