// TMW2 Scripts.
// Author:
// Jesusalva
004-1,119,96,0 script Cassia NPC_FEMALE,{
mesn;
//if ($@BattleOn) goto L_Busy;
mesq l("Hello! I am @@, currently in charge of the Desert Pass.", .name$);
next;
atcommand("@time");
mesq l("The Fallen Kings challenge ownership of this pass at ##B08:00##b, ##B16:00##b and ##B00:00##b.");
next;
mesq l("Right click on one of their representatives, and choose to join a \'Chat\' when it is close of the time!");
next;
mesq l("Just as a warning, main chat will change. Use it to discuss the strategy!");
if (!getgmlevel()) goto L_Close;
mes "";
menu
rif(!$@BattleOn, l("Init!")), L_Init,
l("Join team 1."), L_T1,
l("Join team 2."), L_T2;
L_T1:
mesn;
if (bg_join_team($@FK_Team1))
goto L_SuccessJoin;
mes "An error happened.";
goto L_Close;
L_T2:
mesn;
if (bg_join_team($@FK_Team1))
goto L_SuccessJoin;
mes "An error happened.";
goto L_Close;
L_SuccessJoin:
mesq l("Done!");
next;
warp "testbg", 0, 0;
close;
L_Init:
.@Froz = getwaitingroomstate(0,"Emissary#1");
.@Hali = getwaitingroomstate(0,"Emissary#2");
if (!.@Froz || !.@Hali) {
mapannounce("004-1", "The Fallen King Event was cancelled.", bc_map);
}
mesn;
next;
$@BattleOn=1;
donpcevent("Emissary#1::SendToBattle");
donpcevent("Emissary#2::SendToBattle");
//bg_warp $@FK_Team1, "testbg", 13, 4;
//bg_warp $@FK_Team2, "testbg", 13, 26;
mesn;
next;
mesq str( bg_get_data($@FK_Team1, 0) );
mesq str( bg_get_data($@FK_Team2, 0) );
next;
//setbgteam $@FK_Team1, 1;
//setbgteam $@FK_Team2, 2;
//mesn;
//next;
mapannounce("testbg", "May the fight begin!", bc_map);
mesn;
next;
$@FKing_T1 = bg_monster($@FK_Team1, "testbg", 1, 1, "OldFallen", 1079, "Cassia::OnVictor2");
$@FKing_T2 = bg_monster($@FK_Team2, "testbg", 13, 28, "OldFallen2", 1080, "Cassia::OnVictor1");
mesn;
next;
initnpctimer();
close;
L_Close:
close;
L_Busy:
mesq l("Sorry, registration period is over.");
close;
OnPcQuit:
warp "002-4", 0, 0;
bg_leave();
end;
OnPcDeath:
warp "002-4", 0, 0;
bg_leave();
end;
OnTimer30000:
if (getmapusers("testbg") < 2) goto L_RestartTimer;
mapannounce("testbg", "Reinforcements raise!", bc_map);
$@FKing_T1 = bg_monster($@FK_Team1, "testbg", 1, 1, "FallenGuard1", 1081, "Cassia::OnSkip");
$@FKing_T2 = bg_monster($@FK_Team2, "testbg", 13, 28, "FallenGuard2", 1082, "Cassia::OnSkip");
stopnpctimer();
initnpctimer();
end;
OnClock2200:
announce "I am alive!", bc_all;
end;
OnSkip:
end;
L_Skip:
end;
L_RestartTimer:
stopnpctimer();
initnpctimer();
end;
OnVictor1:
if (!$@BattleOn) goto L_Skip;
stopnpctimer();
announce "Team 1 raises victorious!", bc_all;
bg_warp $@FK_Team1, "004-2", 29, 23;
bg_warp $@FK_Team2, "004-2", 29, 23;
bg_destroy($@FK_Team1);
bg_destroy($@FK_Team2);
$@BattleOn=0;
end;
OnVictor2:
if (!$@BattleOn) goto L_Skip;
stopnpctimer();
announce "Team 2 raises victorious!", bc_all;
bg_warp $@FK_Team1, "004-2", 29, 23;
bg_warp $@FK_Team2, "004-2", 29, 23;
bg_destroy($@FK_Team1);
bg_destroy($@FK_Team2);
$@BattleOn=0;
end;
OnInit:
.@npcId = getnpcid(0, .name$);
setunitdata(.@npcId, UDT_HEADTOP, 1322); // Dress
setunitdata(.@npcId, UDT_HEADMIDDLE, 2204); // Not needed
setunitdata(.@npcId, UDT_HEADBOTTOM, 1800); // Shoes
setunitdata(.@npcId, UDT_WEAPON, 3501);
setunitdata(.@npcId, UDT_HAIRSTYLE, 12);
setunitdata(.@npcId, UDT_HAIRCOLOR, 5);
npcsit;
.sex = G_FEMALE;
.distance = 7;
// This script is TODO
if (!debug) {
disablenpc "Cassia";
}
end;
}
// This script is TODO WIP
/*
004-1,115,93,0 script Emissary#1 NPC_ELF,{
hello;
OnSendToBattle:
$@FK_Team1=waitingroom2bg("testbg", 13, 4, "Cassia::OnPcQuit", "Cassia::OnPcDeath");
setbgteam $@FK_Team1, 1;
bg_warp $@FK_Team1, "testbg", 13, 4;
end;
OnInit:
.@npcId = getnpcid(0, .name$);
setunitdata(.@npcId, UDT_HEADTOP, 1312); // Light armor
setunitdata(.@npcId, UDT_HEADMIDDLE, 2212); // Pants
setunitdata(.@npcId, UDT_HEADBOTTOM, 1800); // Shoes
setunitdata(.@npcId, UDT_WEAPON, 3501);
setunitdata(.@npcId, UDT_HAIRSTYLE, 13);
setunitdata(.@npcId, UDT_HAIRCOLOR, 7);
waitingroom("Winterfall", 30, "Cassia::OnSkip", 1);
.sex = G_OTHER;
.distance = 5;
end;
}
004-1,117,93,0 script Emissary#2 NPC_ELF,{
hello;
OnSendToBattle:
$@FK_Team2=waitingroom2bg("testbg", 13, 26, "Cassia::OnPcQuit", "Cassia::OnPcDeath");
setbgteam $@FK_Team2, 2;
bg_warp $@FK_Team2, "testbg", 13, 26;
end;
OnInit:
.@npcId = getnpcid(0, .name$);
setunitdata(.@npcId, UDT_HEADTOP, 1311); // Terran armor
setunitdata(.@npcId, UDT_HEADMIDDLE, 2212); // Pants
setunitdata(.@npcId, UDT_HEADBOTTOM, 1800); // Shoes
setunitdata(.@npcId, UDT_WEAPON, 3501);
setunitdata(.@npcId, UDT_HAIRSTYLE, 13);
setunitdata(.@npcId, UDT_HAIRCOLOR, 7);
waitingroom("Summerfall", 30, "Cassia::OnSkip", 1);
.sex = G_OTHER;
.distance = 5;
end;
}
*/