From 4eabbb012ad6e6a4b9b3343e090b96de2841c1cf Mon Sep 17 00:00:00 2001 From: Lance Date: Fri, 26 May 2006 07:21:48 +0000 Subject: * Change scripting engine's NPC scope vars to dot (.) style. * Improved and (should be fully) fixed the mob control engine. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6769 54d463be-8e91-2dee-dedb-b68131a5f0ec --- npc/sample/monster_controller.cpp | 96 +++++++++++++++++++-------------------- 1 file changed, 48 insertions(+), 48 deletions(-) (limited to 'npc/sample') diff --git a/npc/sample/monster_controller.cpp b/npc/sample/monster_controller.cpp index 7e68d7f7f..58b5693a8 100644 --- a/npc/sample/monster_controller.cpp +++ b/npc/sample/monster_controller.cpp @@ -1,45 +1,45 @@ // Variables Logging: -// 'mc_moblist[] - ID list of mobs +// .mc_moblist[] - ID list of mobs prontera.gat,180,200,4 script Monster Controller 123,{ function display_info { - getmobdata getarg(0), '@mob_data; - set '@array_size, getarraysize('@mob_data); - for(set '@i, 0; '@i < '@array_size; set '@i, '@i + 1){ - mes '@i + " - " + '@mob_data['@i]; + getmobdata getarg(0), .@mob_data; + set .@array_size, getarraysize(.@mob_data); + for(set .@i, 0; .@i < .@array_size; set .@i, .@i + 1){ + mes .@i + " - " + .@mob_data[.@i]; } return; } function remove_mob { removemob getarg(0); - set '@mob_size, getarraysize('mc_moblist); - for(set '@i, 0; '@i < '@mob_size; set '@i, '@i + 1){ - if('mc_moblist['@i] == getarg(0)) - deletearray 'mc_moblist['@i], 1; + set .@mob_size, getarraysize(.mc_moblist); + for(set .@i, 0; .@i < .@mob_size; set .@i, .@i + 1){ + if(.mc_moblist[.@i] == getarg(0)) + deletearray .mc_moblist[.@i], 1; } } function make_menu { - set '@array_size, getarraysize(getarg(0)); - set '@tmp_str$, ""; - for(set '@i, 0; '@i < '@array_size; set '@i, '@i + 1){ - set '@tmp_str$, '@tmp_str$ + 'mc_moblist['@i] + ":"; + set .@array_size, getarraysize(.mc_moblist); + set .@tmp_str$, ""; + for(set .@i, 0; .@i < .@array_size; set .@i, .@i + 1){ + set .@tmp_str$, .@tmp_str$ + .mc_moblist[.@i] + ":"; } - select '@tmp_str$; - return getelementofarray(getarg(0),@menu-1); + select .@tmp_str$; + return .mc_moblist[@menu-1]; } function summon_mob { - set '@mob_size, getarraysize('mc_moblist); - set 'mc_moblist['@mob_size], spawnmob("Slave - " + '@mob_size, getarg(0), "prontera.gat", 180, 200); - mobattach 'mc_moblist['@mob_size]; + set .@mob_size, getarraysize(.mc_moblist); + set .mc_moblist[.@mob_size], spawnmob("Slave - " + .@mob_size, getarg(0), "prontera.gat", 180, 200); + mobattach .mc_moblist[.@mob_size]; return; } function list_mobs { - set '@mob_size, getarraysize('mc_moblist); - for(set '@i, 0; '@i < '@mob_size; set '@i, '@i + 1){ - mes "- " + 'mc_moblist['@i]; + set .@mob_size, getarraysize(.mc_moblist); + for(set .@i, 0; .@i < .@mob_size; set .@i, .@i + 1){ + mes "- " + .mc_moblist[.@i]; } return; } @@ -59,15 +59,15 @@ L_MainMenu: goto L_MainMenu; break; case 2: // Remove - remove_mob make_menu('mc_moblist); + remove_mob make_menu(); next; goto L_MainMenu; break; case 3: // Information - set '@tmp, make_menu('mc_moblist); + set .@tmp, make_menu(); next; mes "[Monster Info]"; - display_info '@tmp; + display_info .@tmp; next; goto L_MainMenu; break; @@ -79,44 +79,44 @@ L_MainMenu: L_AttackMenu: switch(select("Walk","Follow","Attack","Stop","Defend","Talk","Emote","Random Walk","Back")){ case 1: // Walk - set '@src, make_menu('mc_moblist); - input '@x; - input '@y; - mobwalk '@src,'@x,'@y; // Mode 1: Walk to location. + set .@src, make_menu(); + input .@x; + input .@y; + mobwalk .@src,.@x,.@y; // Mode 1: Walk to location. break; case 2: // Follow - set '@src, make_menu('mc_moblist); - input '@tar; - mobwalk '@src, '@tar; // Mode 2: Walk to target. + set .@src, make_menu(); + input .@tar; + mobwalk .@src, .@tar; // Mode 2: Walk to target. break; case 3: // Attack - set '@src, make_menu('mc_moblist); - input '@tar; - mobattack '@src, '@tar; + set .@src, make_menu(); + input .@tar; + mobattack .@src, .@tar; break; case 4: // Stop - set '@src, make_menu('mc_moblist); - mobstop '@src; + set .@src, make_menu(); + mobstop .@src; break; case 5: // Defend/Assist - set '@src, make_menu('mc_moblist); - input '@tar; - mobassist '@src, '@tar; + set .@src, make_menu(); + input .@tar; + mobassist .@src, .@tar; break; case 6: // Talk - set '@src, make_menu('mc_moblist); - input '@text$; - mobtalk '@src, '@text$; + set .@src, make_menu(); + input .@text$; + mobtalk .@src, .@text$; break; case 7: // Emote - set '@src, make_menu('mc_moblist); - input '@emote; - mobemote '@src, '@emote; + set .@src, make_menu(); + input .@emote; + mobemote .@src, .@emote; break; case 8: - set '@src, make_menu('mc_moblist); - input '@flag; - mobrandomwalk '@src, '@flag; + set .@src, make_menu(); + input .@flag; + mobrandomwalk .@src, .@flag; break; case 9: next; -- cgit v1.2.3-60-g2f50