|
@@ -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
|