summaryrefslogtreecommitdiff
path: root/npc/003-10/arnea.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/003-10/arnea.txt')
-rw-r--r--npc/003-10/arnea.txt145
1 files changed, 145 insertions, 0 deletions
diff --git a/npc/003-10/arnea.txt b/npc/003-10/arnea.txt
new file mode 100644
index 000000000..a55db1fd0
--- /dev/null
+++ b/npc/003-10/arnea.txt
@@ -0,0 +1,145 @@
+// TMW2 Scripts
+// Author:
+// 4144
+// Jesusalva
+// Description:
+// Arena for Duels and PVP (003-13,31,31)
+
+003-5,33,37,0 script Arnea NPC_ELF_F,{
+ if (DESTROY_ME) {
+ DESTROY_ME=0;
+ instance_destroy(DESTROY_MY_ID);
+ }
+
+ // FIXIT code
+ if (!is_staff()) goto L_Incomplete;
+
+ mesn;
+ mesq l("Welcome to the Arena. Select your action");
+ menu
+ l("Create new arena"), L_NewArena,
+ l("Join existing arena"), L_JoinArena,
+ l("Information"), L_Info,
+ l("Leave"), L_Quit;
+
+L_NewArena:
+ mes "";
+ mesn;
+ if (Zeny < .price) {
+ mesq l("You need @@ GP to use this arena.", .price);
+ } else {
+ mesq l("Okay, which arena will you rent? Cost is @@ GP.", .price);
+ menu
+ rif($@ARENA_INSTANCES[0] < 0, l("Arena 1")), -,
+ rif($@ARENA_INSTANCES[1] < 0, l("Arena 2")), -,
+ rif($@ARENA_INSTANCES[2] < 0, l("Arena 3")), -,
+ rif($@ARENA_INSTANCES[3] < 0, l("Arena 4")), -,
+ rif($@ARENA_INSTANCES[4] < 0, l("Arena 5")), -,
+ l("Give Up"), L_Quit;
+
+ mes (@menu-1);
+ .@ARENA_INSTID = instance_create("003-13@arenax"+(@menu), 0, IOT_NONE);
+ if (.@ARENA_INSTID >= 0)
+ {
+ mes "new instance id: " + str(.@ARENA_INSTID);
+ .@instanceMapName$ = instance_attachmap("003-13", .@ARENA_INSTID, 0, "003-13@a" + (@menu-1));
+ if (.@instanceMapName$ == "")
+ {
+ mes "Error: instance attach map error";
+ } else {
+ mes "Attached instance map name: " + .@instanceMapName$;
+ instance_set_timeout(1000000, 1000000, .@ARENA_INSTID);
+ instance_init(.@ARENA_INSTID);
+ set Zeny, Zeny-1000;
+ $@ARENA_INSTANCES[@menu-1]=getcharid(3);
+ }
+ } else {
+ mes l("An error happened.");
+ }
+ }
+ goto L_Quit;
+
+
+L_Info:
+ mes "npc name: " + .name$;
+ mes "npc ext name: " + .extname$;
+ mes "npc id: " + .id;
+ mes "npc parent id: " + .parent;
+ mes "npc src id: " + .srcId;
+ mes "char id 3: " + getcharid(3);
+ if (instance_id() >= 0)
+ mes "instance id: " + instance_id();
+ close;
+
+L_JoinArena:
+ mes "";
+ mesn;
+ if (Zeny < .price) {
+ mesq l("You need @@ GP to use this arena.", .price);
+ } else {
+ mesq l("Okay, which arena will you join? Cost is @@ GP.", .price);
+ //menu
+ // rif(has_instance2("003-5@0") >= 0, l("Arena 1")), -,
+ // rif(has_instance2("003-5@1") >= 0, l("Arena 2")), -,
+ // rif(has_instance2("003-5@2") >= 0, l("Arena 3")), -,
+ // rif(has_instance2("003-5@3") >= 0, l("Arena 4")), -,
+ // rif(has_instance2("003-5@4") >= 0, l("Arena 5")), -,
+ // l("Give Up"), L_Quit;
+ menu
+ rif($@ARENA_INSTANCES[0] > 0, l("Arena 1")), -,
+ rif($@ARENA_INSTANCES[1] > 0, l("Arena 2")), -,
+ rif($@ARENA_INSTANCES[2] > 0, l("Arena 3")), -,
+ rif($@ARENA_INSTANCES[3] > 0, l("Arena 4")), -,
+ rif($@ARENA_INSTANCES[4] > 0, l("Arena 5")), -,
+ l("Give Up"), L_Quit;
+ warp "003-13@a"+(@menu-1), 31,31;
+ set Zeny, Zeny-.price;
+ //instance_warpall("003-13@a"+@menu, 30, 31); // Only use while in instance
+ }
+ close;
+
+
+L_Quit:
+ close;
+
+L_Incomplete:
+ mesn;
+ mesq lg("Hello darling.");
+ next;
+ mesq l("I am @@, and I take care of the Arena.", .name$);
+ next;
+ mesq l("At the moment, we must wait authorization from Tulimshar's government to re-open doors.");
+ close;
+
+OnInit:
+ .@npcId = getnpcid(0, .name$);
+ setunitdata(.@npcId, UDT_HEADTOP, 2907);
+ setunitdata(.@npcId, UDT_HEADMIDDLE, 1305);
+ setunitdata(.@npcId, UDT_HEADBOTTOM, 2204);
+ setunitdata(.@npcId, UDT_WEAPON, 3509);
+ setunitdata(.@npcId, UDT_HAIRSTYLE, 14);
+ setunitdata(.@npcId, UDT_HAIRCOLOR, 18);
+
+ .sex = G_FEMALE;
+ .distance = 5;
+ .alwaysVisible = true;
+ .price=1000;
+ // test instance id
+ setarray $@ARENA_INSTANCES, -1,-1,-1,-1,-1; // Controls Owners
+ setarray $@ARENA_INFOS$, "","","","",""; // Controls Owners
+
+ // Temporary fix
+ disablenpc "Arnea";
+ end;
+
+OnInstanceInit:
+ .@npcId = getnpcid(0, instance_npcname(.name$));
+ setunitdata(.@npcId, UDT_HEADTOP, 2907);
+ setunitdata(.@npcId, UDT_HEADMIDDLE, 1305);
+ setunitdata(.@npcId, UDT_HEADBOTTOM, 2204);
+ setunitdata(.@npcId, UDT_WEAPON, 3509);
+ setunitdata(.@npcId, UDT_HAIRSTYLE, 14);
+ setunitdata(.@npcId, UDT_HAIRCOLOR, 18);
+ end;
+
+}