* Removed Non-English sample files from doc/sample/ (bugreport:6750)
- sample/npc_test_ev.txt was originally used to demonstrate nifty event related commands. - sample/npc_test_arena.txt is rather defunct as there are fully working scripts within npc/ that demonstrate the same functionality. - sample/npc_test_str.txt explains how StRing != striNG. This is documented in doc/script_commands.txt * Slight update to CMakeLists.txt for README.txt git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16982 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
4129e5eb1c
commit
e49bf6b138
@ -481,6 +481,7 @@ set( RUNTIME_FILES
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/map-server.sh"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/mapserv-sql.bat"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/pcre3.dll"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/README.txt"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/runserver-sql.bat"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/serv.bat"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/start"
|
||||
@ -492,7 +493,6 @@ set( RUNTIME_DIRECTORIES
|
||||
"doc"
|
||||
"log"
|
||||
"npc"
|
||||
"readme"
|
||||
"sql-files"
|
||||
"tools"
|
||||
)
|
||||
|
@ -1,104 +0,0 @@
|
||||
// ------------------------------------------------------------------
|
||||
// アリ-ナの設定
|
||||
// ------------------------------------------------------------------
|
||||
|
||||
// 次のマップを使います
|
||||
//map: prontera
|
||||
//map: prt_are_in
|
||||
//map: force_1-1
|
||||
|
||||
// テレポなどの禁止処理
|
||||
prt_are_in mapflag nomemo dummy
|
||||
prt_are_in mapflag noteleport dummy
|
||||
prt_are_in mapflag nosave prontera,156,191
|
||||
force_1-1 mapflag nomemo dummy
|
||||
force_1-1 mapflag noteleport dummy
|
||||
force_1-1 mapflag nosave prontera,156,191
|
||||
|
||||
// プロンテラに入り口を置く
|
||||
prontera,160,185,0 script アリーナ入り口 116,{
|
||||
mes "アリーナ入り口に飛びますか?";
|
||||
next;
|
||||
menu "飛ぶ",L_GOARENA,"やめる",L_YAME;
|
||||
L_GOARENA:
|
||||
warp "prt_are_in",31,82;
|
||||
close;
|
||||
L_YAME:
|
||||
close;
|
||||
}
|
||||
|
||||
// 待機室から準備室への転送
|
||||
prt_are_in,29,79,0 script タイムアタック1 116,{
|
||||
if( getmapusers("force_1-1")>0 ) goto L_WAIT;
|
||||
mes "ここはタイムアタックLv1です";
|
||||
mes "挑戦しますか?";
|
||||
menu "はい",L_GOLV1,"やめる",L_YAME;
|
||||
L_GOLV1:
|
||||
if( getmapusers("force_1-1")>0 ) goto L_WAIT;
|
||||
disablenpc "fc103-1";
|
||||
disablenpc "fc105";
|
||||
disablenpc "fc107";
|
||||
addtimer 5000,"arenatestev0000";
|
||||
warp "force_1-1",99,12;
|
||||
end;
|
||||
L_WAIT:
|
||||
mes "現在挑戦中の方がいますので、";
|
||||
mes "しばらくお待ちください。";
|
||||
L_YAME:
|
||||
close;
|
||||
}
|
||||
|
||||
// 準備室(10秒準備期間)
|
||||
force_1-1,99,12,0 script arenatestev0000 -1,{
|
||||
announce "10秒後に開始します",3;
|
||||
addtimer 10000,"arenatestev0001";
|
||||
}
|
||||
|
||||
// 実際の部屋への転送とMOBの設定
|
||||
force_1-1,99,12,0 script arenatestev0001 -1,{
|
||||
killmonster "force_1-1","arenatestev1000";
|
||||
monster "force_1-1",25,25,"--ja--",1002,1,"arenatestev1000";
|
||||
monster "force_1-1",20,25,"--ja--",1002,1,"arenatestev1000";
|
||||
monster "force_1-1",25,20,"--ja--",1002,1,"arenatestev1000";
|
||||
monster "force_1-1",30,25,"--ja--",1002,1,"arenatestev1000";
|
||||
monster "force_1-1",25,30,"--ja--",1002,1,"arenatestev1000";
|
||||
set $arenatest00,5;
|
||||
disablenpc "fc101";
|
||||
disablenpc "fc103";
|
||||
warp "force_1-1",25,26;
|
||||
enablenpc "fc103-1";
|
||||
enablenpc "fc105";
|
||||
enablenpc "fc107";
|
||||
announce "30秒以内に殲滅せよ",19;
|
||||
addtimer 30000,"arenatestev8000";
|
||||
}
|
||||
|
||||
// 倒した処理
|
||||
force_1-1,25,26,0 script arenatestev1000 -1,{
|
||||
set $arenatest00, $arenatest00 - 1;
|
||||
if( $arenatest00 > 0 ) goto L_CONT;
|
||||
deltimer "arenatestev8000";
|
||||
announce "クラッシュ!!",3;
|
||||
enablenpc "fc101";
|
||||
enablenpc "fc103";
|
||||
areaannounce "prt_are_in",25,75,40,90,
|
||||
strcharinfo(0) + " がタイムアタックLv1をクリアしました",0;
|
||||
addtimer 5000,"arenatestev9000";
|
||||
L_CONT:
|
||||
end;
|
||||
}
|
||||
|
||||
// タイムアウト
|
||||
force_1-1,25,26,0 script arenatestev8000 -1,{
|
||||
set $arenatest00,99;
|
||||
killmonster "force_1-1","arenatestev1000";
|
||||
announce "タイムオーバー!!",3;
|
||||
areaannounce "prt_are_in",25,75,40,90,
|
||||
strcharinfo(0) + " がタイムアタックLv1に失敗しました",0;
|
||||
addtimer 5000,"arenatestev9000";
|
||||
}
|
||||
|
||||
// プロンテラに帰る
|
||||
force_1-1,25,26,0 script arenatestev9000 -1,{
|
||||
warp "prontera",156,191;
|
||||
}
|
@ -1,146 +0,0 @@
|
||||
// イベントのテストと解説
|
||||
//
|
||||
|
||||
|
||||
// * NPCの表示クラスを-1にするとイベントになり、実行可能になります。
|
||||
// * 通常のNPCでも以下のラベル付きイベントを使うことでイベントになれます。
|
||||
// * NPCスクリプトでOn~で始まるラベルを定義すると、
|
||||
// ラベル付きのイベントとしてエクスポートし、実行可能になります。
|
||||
// * NPCイベントで"NPC名(orイベント名)::ラベル名"とすると、
|
||||
// 指定したラベルから実行できます。
|
||||
// * ラベル名は24バイト以内にして下さい。
|
||||
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
// イベントの起こし方/起こり方
|
||||
// ------------------------------------------------------------------
|
||||
|
||||
// 1.doeventコマンドで起こす
|
||||
// 2.MOBを倒したときに起こす
|
||||
// a. スクリプトmonsterコマンドの第7引数でイベント名を設定
|
||||
// b. monsterの配置の最後の引数でイベント名を設定
|
||||
// 3.マップ初期化時に起こる(OnInit)
|
||||
// 4.NPCチャットルームが満員になったときに起こる
|
||||
// 5.時計によって起こる
|
||||
// (OnMinute??,OnHour??,OnClock????,OnDate????) : ?は数字
|
||||
|
||||
// 3,5の初期化イベント、時計イベントは、対象のPCを持たないイベントになります
|
||||
// よってPCを対象とするスクリプトを使うことは出来ません。
|
||||
// また、announceコマンドなどは0x08フラグを指定してNPC主体にする必要があります
|
||||
|
||||
// ----------イベント駆動のサンプル -------------
|
||||
// クリックするとイベント「event_test2」を起こすNPC
|
||||
prontera,155,180,0 script ev_doテスト 116,{
|
||||
doevent "event_test2";
|
||||
}
|
||||
|
||||
// ----------MOBによるイベント駆動のサンプル -------------
|
||||
// 倒すとイベント「event_test」を起こすモンスターの[召喚]
|
||||
prontera,150,185,0 script ev_mobテスト 116,{
|
||||
monster "this",0,0,"Event_Mob2",1002,1,"event_test";
|
||||
}
|
||||
|
||||
// ----------MOBによるイベント駆動のサンプル2-------------
|
||||
// 倒すとイベント「event_test3」を起こすモンスターの[配置]
|
||||
prontera,150,180,0 monster Event_Mob 1008,1,0,0,event_test3
|
||||
|
||||
// ----------タイマによるイベント駆動のサンプル -------------
|
||||
// クリックすると5秒後にラベル「OnTimer」を実行するNPC
|
||||
// (イベント名に「NPC名::On~で始まるラベル」を指定するとラベルを実行できる)
|
||||
prontera,155,185,0 script ev_timerテスト 116,{
|
||||
addtimer 5000,"ev_timerテスト::OnTimer";
|
||||
end;
|
||||
OnTimer:
|
||||
mes "5秒経ちました";
|
||||
close;
|
||||
}
|
||||
|
||||
// ----------OnInit/チャットルームによるイベント駆動のサンプル -------------
|
||||
// マップサーバー起動時にラベル「OnInit」が実行され、チャットを作る
|
||||
// また、waitingroomの第3引数にイベントを設定する
|
||||
prontera,145,180,0 script ev_initテスト 116,{
|
||||
end;
|
||||
OnInit:
|
||||
waitingroom "OnInitテスト",1,"ev_initテスト::OnMax";
|
||||
end;
|
||||
OnMax:
|
||||
warpwaitingpc "prontera",155,190;
|
||||
end;
|
||||
|
||||
}
|
||||
|
||||
// ----------時計によるイベント駆動のサンプル -------------
|
||||
// 指定の時刻や日付でイベントを実行する
|
||||
// announceに0x08フラグを指定しているところに注意してください。
|
||||
prontera,145,185,0 script ev_clockテスト 116,{
|
||||
end;
|
||||
// 毎時5分
|
||||
OnMinute05:
|
||||
announce "毎時5分をお知らせします",8;
|
||||
end;
|
||||
// 毎日12時(24H)
|
||||
OnHour12:
|
||||
announce "正午のニュースです",8;
|
||||
end;
|
||||
// 23時59分
|
||||
OnClock2359:
|
||||
announce "あと1分で明日です",8;
|
||||
end;
|
||||
// 1月1日
|
||||
OnDate0101:
|
||||
announce "あけましておめでとうございます",8;
|
||||
end;
|
||||
}
|
||||
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
// イベントスクリプトの作り方
|
||||
// ------------------------------------------------------------------
|
||||
// 表示クラスを-1にするとイベント扱いになり、名前がイベント名になる。
|
||||
// エリアを指定しない場合、同じマップ内がイベントを起こす範囲になる。
|
||||
// エリアを指定する場合、共に-1にすると同じマップ鯖ならマップが違っても
|
||||
// 駆動する。エリアは半径である。なお、イベントの起こる位置というのは、
|
||||
// 対象となるPCの座標である。たとえば、遠距離攻撃でMOBを倒したときに
|
||||
// 起こるイベントはMOBの座標ではなく、PCの座標なので注意。
|
||||
|
||||
// ----------イベントで、エリアは指定していないサンプル------------
|
||||
// 同じマップ内でイベント「event_test」が起こると実行される
|
||||
prontera,150,185,0 script event_test -1,{
|
||||
announce strcharinfo(0) + " が召喚MOBを倒しました",2;
|
||||
close;
|
||||
}
|
||||
|
||||
// ----------イベントで、エリアを指定したサンプル------------
|
||||
// (155,185)から半径5セル以内でイベント「event_test2」が起こると実行される
|
||||
prontera,155,180,0 script event_test2 -1,5,5 {
|
||||
announce "5セル以内でクリックしましたね",19;
|
||||
close;
|
||||
}
|
||||
|
||||
// ----------イベントで、エリアを-1にしたサンプル------------
|
||||
// 同じマップ鯖でイベント「event_test3」が起こると実行される
|
||||
prontera,150,180,0 script event_test3 -1,-1,-1 {
|
||||
mes "配置MOB倒しましたね";
|
||||
close;
|
||||
}
|
||||
|
||||
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
// イベントマップ用の設定
|
||||
// ------------------------------------------------------------------
|
||||
// (全てコメントアウトしてます)
|
||||
|
||||
// ----------セーブ禁止のサンプル---------
|
||||
// このマップでログアウトすると、必ず プロンテラ の座標(156,190)に
|
||||
// セーブされる
|
||||
//prontera mapflag nosave prontera,156,190
|
||||
|
||||
// ----------メモ禁止のサンプル---------
|
||||
// このマップではメモがとれない
|
||||
//prontera mapflag nomemo dummy
|
||||
|
||||
// ----------テレポ禁止のサンプル---------
|
||||
// このマップでは蝿、蝶、テレポ、ポタが使えない
|
||||
// 注意:スクリプトのwarpの"Random","SavePoint"が無効になります
|
||||
//prontera mapflag noteleport dummy
|
@ -1,26 +0,0 @@
|
||||
//===== rAthena Script =======================================
|
||||
//= Sample: String Test
|
||||
//===== By: ==================================================
|
||||
//= rAthena Dev Team
|
||||
//===== Current Version: =====================================
|
||||
//= 20070315
|
||||
//===== Description: =========================================
|
||||
//= An example of string comparisons.
|
||||
//============================================================
|
||||
|
||||
prontera,164,188,1 script sTrInG2compare 112,{
|
||||
set @str$, "StRiNg1";
|
||||
mes "sTrInG2 isn't equal to " + @str$ ;
|
||||
mes "Our Var is equal to " + @str$ + " ...OK?";
|
||||
next;
|
||||
mes "Comparison eqOK<4F>F" + (@str$=="StRiNg1");
|
||||
mes "Comparison eqNG<4E>F" + (@str$=="sTrInG2");
|
||||
mes "Comparison neOK<4F>F" + (@str$!="00000");
|
||||
mes "Comparison neNG<4E>F" + (@str$!="StRiNg1");
|
||||
mes "Comparison gtOK<4F>F" + ("aab">"aaa");
|
||||
mes "Comparison ltNG<4E>F" + ("aab"<"aaa");
|
||||
next;
|
||||
input @str2$;
|
||||
mes "You've entered '" + @str2$ + "' string.";
|
||||
close;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user