//================= Hercules Script ======================================= //= _ _ _ //= | | | | | | //= | |_| | ___ _ __ ___ _ _| | ___ ___ //= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| //= | | | | __/ | | (__| |_| | | __/\__ \ //= \_| |_/\___|_| \___|\__,_|_|\___||___/ //================= License =============================================== //= This file is part of Hercules. //= http://herc.ws - http://github.com/HerculesWS/Hercules //= //= Copyright (C) 2012-2020 Hercules Dev Team //= Copyright (C) Euphy //= Copyright (C) L0ne_W0lf //= Copyright (C) Lupus //= Copyright (C) Silent //= Copyright (C) Evera //= //= Hercules is free software: you can redistribute it and/or modify //= it under the terms of the GNU General Public License as published by //= the Free Software Foundation, either version 3 of the License, or //= (at your option) any later version. //= //= This program is distributed in the hope that it will be useful, //= but WITHOUT ANY WARRANTY; without even the implied warranty of //= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //= GNU General Public License for more details. //= //= You should have received a copy of the GNU General Public License //= along with this program. If not, see . //========================================================================= //= Dungeon Teleport Service //================= Description =========================================== //= Cool Event Corp (a.k.a. Zonda Corp) vs. Kafra Dungeon Teleport Service //= and voting system. //= This is a special event on official servers where there's a big //= competition between Kafra Corp. and Cool Event Corp. to warp to //= selected levels of certain dungeons. //================= Current Version ======================================= //= 2.9 //================= Variables Used ======================================== //= - lhz_vote : How many times player has voted, keeps htem from //= re-voting. //= - $DTS_Time : Voting Time check //= - $DTS_JondaVotes : Cool Event Corp. Vote Numbers //= - $DTS_KafraVotes : Kafra Vote Numbers //= - $DTS_Result : Winner //= - $DTS_PeriodCheck : Teleport Service Period Check //= - $DTS_KafraWins : Kafra Points //= - $DTS_JondaWins : Cool Event Corp. Points //= - $DTS_VoteCount : Setitem Check //= For detailed information on what each varibale does, see the //= "Vote Globalvar Girl#yuno" NPC at the end of the file. //========================================================================= einbroch,246,70,0 script Vote Timer#ein FAKE_NPC,{ OnInit: if ($dts) { $dts = 0; $dtsvote = 0; $dtsday = 0; } initnpctimer; end; OnEnable: initnpctimer; end; OnTimer60000: // A part that keeps the same status even after a server shut down if ($DTS_Result == 1) { if ($DTS_JondaWins == 0) { donpcevent "Vote Timer2#ein::OnEnable"; } else if ($DTS_JondaWins == 1) { if ($DTS_KafraWins < 2) { donpcevent "Vote Timer2#ein::OnEnable"; } else { donpcevent "Vote Timer3#ein::OnEnable"; } } else { if ($DTS_KafraWins < 2) { donpcevent "Vote Timer2#ein::OnEnable"; } else { donpcevent "Vote Timer3#ein::OnEnable"; } } stopnpctimer; } else if ($DTS_Result == 2) { if ($DTS_JondaWins == 0) { donpcevent "Vote Timer2#ein::OnEnable"; } else if ($DTS_JondaWins == 1) { if ($DTS_KafraWins < 2) { donpcevent "Vote Timer2#ein::OnEnable"; } else { donpcevent "Vote Timer4#ein::OnEnable"; } } else { if ($DTS_KafraWins < 2) { donpcevent "Vote Timer2#ein::OnEnable"; } else { donpcevent "Vote Timer4#ein::OnEnable"; } } stopnpctimer; } else { if ($DTS_Time == 1440) { if (($DTS_JondaVotes >= 20) || ($DTS_KafraVotes >= 20)) { if ($DTS_JondaVotes > $DTS_KafraVotes) { if ($DTS_JondaWins == 0) { if ($DTS_KafraWins < 2) { ++$DTS_KafraWins; $DTS_Result = 1; $DTS_Time = 0; donpcevent "Scrutiny Association#6::OnEnable"; donpcevent "Vote Timer2#ein::OnEnable"; } else if ($DTS_KafraWins == 2) { $DTS_Result = 1; $DTS_Time = 0; donpcevent "Scrutiny Association#6::OnEnable"; donpcevent "Vote Timer2#ein::OnEnable"; } } else if ($DTS_JondaWins == 1) { if ($DTS_KafraWins < 2) { ++$DTS_KafraWins; $DTS_Result = 1; $DTS_Time = 0; donpcevent "Scrutiny Association#6::OnEnable"; donpcevent "Vote Timer2#ein::OnEnable"; } else { $DTS_Time = 0; $DTS_Result = 1; donpcevent "Scrutiny Association#6::OnEnable"; donpcevent "Vote Timer3#ein::OnEnable"; } } else { if ($DTS_KafraWins < 2) { ++$DTS_KafraWins; $DTS_Result = 1; $DTS_Time = 0; donpcevent "Scrutiny Association#6::OnEnable"; donpcevent "Vote Timer2#ein::OnEnable"; } else { $DTS_Result = 1; $DTS_Time = 0; donpcevent "Scrutiny Association#6::OnEnable"; donpcevent "Vote Timer3#ein::OnEnable"; } } } else { if ($DTS_KafraWins == 0) { if ($DTS_JondaWins < 2) { ++$DTS_JondaWins; $DTS_Result = 2; $DTS_Time = 0; donpcevent "Scrutiny Association#7::OnEnable"; donpcevent "Vote Timer2#ein::OnEnable"; } else { $DTS_Result = 2; $DTS_Time = 0; donpcevent "Scrutiny Association#7::OnEnable"; donpcevent "Vote Timer2#ein::OnEnable"; } } else if ($DTS_KafraWins == 1) { if ($DTS_JondaWins < 2) { ++$DTS_JondaWins; $DTS_Result = 2; $DTS_Time = 0; donpcevent "Scrutiny Association#7::OnEnable"; donpcevent "Vote Timer2#ein::OnEnable"; } else { $DTS_Result = 2; $DTS_Time = 0; donpcevent "Scrutiny Association#7::OnEnable"; donpcevent "Vote Timer4#ein::OnEnable"; } } else { if ($DTS_JondaWins < 2) { ++$DTS_JondaWins; $DTS_Result = 2; $DTS_Time = 0; donpcevent "Scrutiny Association#7::OnEnable"; donpcevent "Vote Timer2#ein::OnEnable"; } else { $DTS_Result = 2; $DTS_Time = 0; donpcevent "Scrutiny Association#7::OnEnable"; donpcevent "Vote Timer4#ein::OnEnable"; } } } } else { $DTS_Result = 3; $DTS_Time = 0; donpcevent "Vote Timer#ein::OnEnable"; } } else { ++$DTS_Time; donpcevent "Vote Timer#ein::OnEnable"; } } end; } einbroch,245,71,0 script Vote Timer2#ein FAKE_NPC,{ OnEnable: initnpctimer; end; OnTimer60000: stopnpctimer; if ($DTS_PeriodCheck == 8640) { $DTS_PeriodCheck = 0; $DTS_Result = 0; $DTS_KafraVotes = 0; $DTS_JondaVotes = 0; ++$DTS_VoteCount; donpcevent "Vote Timer#ein::OnEnable"; } else { ++$DTS_PeriodCheck; donpcevent "Vote Timer2#ein::OnEnable"; } end; } einbroch,246,71,0 script Vote Timer3#ein FAKE_NPC,{ OnEnable: initnpctimer; end; OnTimer60000: stopnpctimer; if ($DTS_PeriodCheck == 8640) { $DTS_PeriodCheck = 0; //Global Variable $DTS_Result = 0; //Global Variable $DTS_KafraVotes = 0; //Global Variable $DTS_JondaVotes = 0; //Global Variable --$DTS_JondaWins; ++$DTS_VoteCount; donpcevent "Vote Timer#ein::OnEnable"; } else { ++$DTS_PeriodCheck; //Global Variable donpcevent "Vote Timer3#ein::OnEnable"; } end; } einbroch,247,71,0 script Vote Timer4#ein FAKE_NPC,{ OnEnable: initnpctimer; end; OnTimer60000: stopnpctimer; if ($DTS_PeriodCheck == 8640) { $DTS_PeriodCheck = 0; //Global Variable $DTS_Result = 0; //Global Variable $DTS_KafraVotes = 0; //Global Variable $DTS_JondaVotes = 0; //Global Variable --$DTS_KafraWins; ++$DTS_VoteCount; donpcevent "Vote Timer#ein::OnEnable"; } else { ++$DTS_PeriodCheck; //Global Variable donpcevent "Vote Timer4#ein::OnEnable"; } end; } //== Voting Poll NPCs Kafras and Cool Corp. ================ // Cool Event Staff should actually be Cool Event Voting Staff names had to be // shortened to keep them unique. function script F_VoteKafra { callfunc "F_ClearGarbage"; //Clear outdated, unused variables switch(getarg(0)){ case 1: cutin "kafra_01",2; break; case 2: cutin "kafra_02",2; break; case 3: cutin "kafra_03",2; break; case 4: cutin "kafra_04",2; break; case 5: cutin "kafra_05",2; break; case 6: cutin "kafra_06",2; break; case 7: cutin "kafra_07",2; break; case 8: cutin "kafra_08",2; break; case 9: cutin "kafra_09",2; break; } mes "[Kafra Voting Staff]"; mes "Greetings, adventurer."; mes "As you may be aware, we"; mes "are holding an election to"; mes "determine which company will"; mes "provide the Dungeon Teleport"; mes "Service. How may I help you?"; next; switch(select("Reason for Election", "Cast a Vote", "Use Teleport Service", "Cancel")) { case 1: mes "[Kafra Voting Staff]"; mes "Cool Event Corp and the"; mes "Kafra Corporation have both"; mes "been planning to provide a"; mes "Teleport Service to dungeons."; next; mes "[Kafra Voting Staff]"; mes "But due to technological"; mes "limitations, only one company"; mes "can serve as provider for this"; mes "Dungeon Teleport Service at a"; mes "time. There, both companies have agreed to hold special elections."; next; mes "[Kafra Voting Staff]"; mes "Each company has its own"; mes "policies and guarantees in"; mes "regards to the Dungeon Teleport Service, and in this election, the"; mes "customers will ultimately decide and choose what's best for them."; next; mes "[Kafra Voting Staff]"; mes "For now, the Dungeon"; mes "Teleport Service will be"; mes "provided in a series of trial periods. This way, customers can"; mes "see the benefits of both companies before making the final decision."; next; mes "[Kafra Voting Staff]"; mes "If you are qualified,"; mes "please vote in each election"; mes "to decide which company will"; mes "provide the Dungeon Teleport"; mes "Service for the next trial period. Thank you for your support~"; break; case 2: //if (lhz_boss < 17) { // mes "[Kafra Voting Staff]"; // mes "Oh, I'm so sorry, but you"; // mes "are currently not qualified to"; // mes "vote. For voting qualification"; // mes "information, please visit the"; // mes "Al De Baran Kafra Headquarters."; // mes "Thank you and have a nice day."; // close2; // cutin "",255; // end; //} //else { if ($DTS_Result == 0) { if (lhz_vote <= $DTS_VoteCount) { mes "[Kafra Voting Staff]"; mes "We, the Kafra Corporation,"; mes "are planning to provide the"; mes "Dungeon Teleport Service"; mes "to the following dungeons..."; next; mes " "; mes " "; if ($DTS_KafraWins == 0) { mes "^FF0000Toy Factory, Level 2^000000"; } else if ($DTS_KafraWins == 1) { mes "^FF0000Toy Factory, Level 2^000000"; mes "^FF0000Al De Baran Clock Tower, Level 3 ^000000"; } else { mes "^FF0000Toy Factory, Level 2^000000"; mes "^FF0000Al De Baran Clock Tower, Level 3 Lava Dungeon, Level 2^000000"; } next; mes "[Kafra Voting Staff]"; mes "If you are interested in"; mes "a Teleport Service to this"; mes "area, then please vote for"; mes "us. Would you like to vote"; mes "for the Kafra Corporation?"; next; switch(select("No", "Yes")) { case 1: mes "[Kafra Voting Staff]"; mes "I understand. But if you"; mes "happen to change your mind,"; mes "you are welcome to come back"; mes "at any time. Thank you and"; mes "have a good day, adventurer."; break; case 2: lhz_vote = $DTS_VoteCount+1; ++$DTS_KafraVotes; mes "[Kafra Voting Staff]"; mes "Thanks for your vote!"; mes "We'll continue to do our best"; mes "to provide the highest quality"; mes "service to our customers. Have"; mes "a good day and remember that the Kafra service is on your side~"; break; } } else { mes "[Kafra Voting Staff]"; mes "I'm sorry, but you've "; mes "already participated in"; mes "this election. When the next"; mes "election comes, you will be"; mes "able to vote once again."; mes "Thank you for your support~"; } } else if ($DTS_Result == 3) { if (lhz_vote <= $DTS_VoteCount) { mes "[Kafra Voting Staff]"; mes "After totalling the number of"; mes "votes from the last election,"; mes "we have concluded that the"; mes "minimum voter participation"; mes "condition was not satisfied."; next; mes "[Kafra Voting Staff]"; mes "Therefore, another election to"; mes "determine which company will"; mes "provide the Dungeon Teleport"; mes "Service will be held. The Kafra"; mes "Corporation will teleport to"; mes "the following dungeons..."; next; mes " "; mes " "; if ($DTS_KafraWins == 0) { mes "^FF0000Toy Factory, Level 2^000000"; } else if ($DTS_KafraWins == 1) { mes "^FF0000Toy Factory, Level 2^000000"; mes "^FF0000Al De Baran Clock Tower, Level 3 ^000000"; } else { mes "^FF0000Toy Factory, Level 2^000000"; mes "^FF0000Al De Baran Clock Tower, Level 3 Lava Dungeon, Level 2^000000"; } next; mes "[Kafra Voting Staff]"; mes "If you are interested in"; mes "a Teleport Service to these"; mes "areas, then please vote for"; mes "us. Would you like to vote"; mes "for the Kafra Corporation?"; next; switch(select("No", "Yes")) { case 1: mes "[Kafra Voting Staff]"; mes "I understand. But if you"; mes "happen to change your mind,"; mes "you are welcome to come back"; mes "at any time. Thank you and"; mes "have a good day, adventurer."; break; case 2: lhz_vote = $DTS_VoteCount+1; ++$DTS_KafraVotes; mes "[Kafra Voting Staff]"; mes "Thanks for your vote!"; mes "We'll continue to do our best"; mes "to provide the highest quality"; mes "service to our customers. Have"; mes "a good day and remember that the Kafra service is on your side~"; break; } } else { mes "[Kafra Voting Staff]"; mes "After totalling the number of"; mes "votes from the last election,"; mes "we have concluded that the"; mes "minimum voter participation"; mes "condition was not satisfied."; next; mes "[Kafra Voting Staff]"; mes "Therefore, another election to"; mes "determine which company will"; mes "provide the Dungeon Teleport"; mes "Service will be held. However,"; mes "since you've already voted, you cannot vote again in this election."; next; mes "[Kafra Voting Staff]"; mes "Your participation in these"; mes "elections is much appreciated,"; mes "and we encourage you to vote"; mes "again during the next election."; mes "Thank you and have a nice day~"; } } else { mes "[Kafra Voting Staff]"; mes "I'm sorry, but there are"; mes "no elections taking place at"; mes "this time. When the polls are"; mes "open, we encourage you to take"; mes "part and voice your opinions."; mes "Thank you for your support~"; } //} break; case 3: if ($DTS_Result == 2) { mes "[Kafra Voting Staff]"; mes "Thank you for choosing the"; mes "Dungeon Teleport Service."; mes "Please keep in mind that the"; mes "Free Warp Tickets and Kafra"; mes "Special Reserve Points do not"; mes "apply in this special service."; next; if ($DTS_KafraWins == 0) { switch(select("Toy Factory, Level 2 -> 4,000 z", "Cancel")) { case 1: if (Zeny >= 4000) { cutin "",255; Zeny -= 4000; warp "xmas_dun02",130,123; end; } else { mes "[Kafra Voting Staff]"; mes "I'm sorry, but you don't"; mes "have enough money to pay"; mes "the 4,000 zeny fee to teleport"; mes "to the Toy Factory. Please"; mes "check your funds again."; } break; case 2: mes "[Kafra Voting Staff]"; mes "We, here at Kafra Corporation,"; mes "are always endeavoring to provide you with the best services. We hope that we meet your adventuring needs and standards of excellence."; break; } } else if ($DTS_KafraWins == 1) { switch(select("Toy Factory, Level 2 -> 4,000 z", "Clock Tower, Level 3 -> 4,000 z", "Cancel")) { case 1: if (Zeny >= 4000) { Zeny -= 4000; cutin "kafra_09",255; warp "xmas_dun02",130,123; end; } else { mes "[Kafra Voting Staff]"; mes "I'm sorry, but you don't"; mes "have enough money to pay"; mes "the 4,000 zeny fee to teleport"; mes "to the Toy Factory. Please"; mes "check your funds again."; } break; case 2: if (Zeny >= 4000) { Zeny -= 4000; cutin "kafra_09",255; warp "alde_dun03",265,22; end; } else { mes "[Kafra Voting Staff]"; mes "I'm sorry, but you don't"; mes "have enough money to pay"; mes "the 4,000 zeny fee to teleport"; mes "to the Clock Tower. Please"; mes "check your funds again."; } break; case 3: mes "[Kafra Voting Staff]"; mes "We, here at Kafra Corporation,"; mes "are always endeavoring to provide you with the best services. We hope that we meet your adventuring needs and standards of excellence."; break; } } else { switch(select("Toy Factory, Level 2 -> 4,000 z", "Clock Tower, Level 3 -> 4,000 z", "Lava Dungeon, Level 2 -> 4,000 z", "Cancel")) { case 1: if (Zeny >= 4000) { Zeny -= 4000; cutin "kafra_09",255; warp "xmas_dun02",130,123; end; } else { mes "[Kafra Voting Staff]"; mes "I'm sorry, but you don't"; mes "have enough money to pay"; mes "the 4,000 zeny fee to teleport"; mes "to the Toy Factory. Please"; mes "check your funds again."; } break; case 2: if (Zeny >= 4000) { Zeny -= 4000; cutin "kafra_09",255; warp "alde_dun03",265,22; end; } else { mes "[Kafra Voting Staff]"; mes "I'm sorry, but you don't"; mes "have enough money to pay"; mes "the 4,000 zeny fee to teleport"; mes "to the Clock Tower. Please"; mes "check your funds again."; } break; case 3: if (Zeny >= 4000) { Zeny -= 4000; cutin "kafra_09",255; warp "mag_dun02",47,40; end; } else { mes "[Kafra Voting Staff]"; mes "I'm sorry, but you don't"; mes "have enough money to pay"; mes "the 4,000 zeny fee to teleport"; mes "to the Lava Dungeon. Please"; mes "check your funds again."; } break; case 4: mes "[Kafra Voting Staff]"; mes "We, here at Kafra Corporation,"; mes "are always endeavoring to provide you with the best services. We hope that we meet your adventuring needs and standards of excellence."; break; } } } else if ($DTS_Result == 1) { mes "[Kafra Voting Staff]"; mes "I'm sorry, but because of"; mes "the results from the most"; mes "recent election, Cool Event"; mes "Corp. is currently handling"; mes "the Dungeon Teleport Service. We apologize for the inconvenience."; } else { mes "[Kafra Voting Staff]"; mes "I'm sorry, but the"; mes "Dungeon Teleport Service"; mes "is not active during the voting"; mes "period. Once the election is"; mes "over, the Dungeon Teleport"; mes "Service will become available."; } break; case 4: mes "[Kafra Voting Staff]"; mes "We, here at Kafra Corporation,"; mes "are always endeavoring to provide you with the best services. We hope that we meet your adventuring needs and standards of excellence."; break; } close2; cutin "",255; end; } yuno,162,191,4 script Kafra Voting Staff#yuno 4_F_KAFRA9,{ callfunc "F_VoteKafra",9; } prontera,164,125,4 script Kafra Voting Staff#prt 4_F_KAFRA2,{ callfunc "F_VoteKafra",2; } moc_ruins,97,133,4 script Kafra Voting Staff#moc 4_F_KAFRA2,{ callfunc "F_VoteKafra",2; } geffen,122,37,4 script Kafra Voting Staff#gef 4_F_KAFRA2,{ callfunc "F_VoteKafra",2; } payon,158,182,4 script Kafra Voting Staff#pay 4_F_KAFRA2,{ callfunc "F_VoteKafra",2; } alberta,119,70,4 script Kafra Voting Staff#alb 4_F_KAFRA2,{ callfunc "F_VoteKafra",2; } aldebaran,145,102,4 script Kafra Voting Staff#alde 4_F_KAFRA2,{ callfunc "F_VoteKafra",2; } lighthalzen,163,60,4 script Kafra Voting Staff#lght 4_F_KAFRA9,{ callfunc "F_VoteKafra",9; } - script Cool Event Staff::VotingStaffCCE 4_M_ZONDAMAN,{ callfunc "F_ClearGarbage"; //Clear outdated, unused variables cutin "zonda_01",2; mes "[Cool Event Corp. Voting Staff]"; mes "Hello! Don't forget to make"; mes "your voice be heard and make"; mes "sure you vote in the elections"; mes "between Cool Event Corp. and"; mes "Kafra Corporation for control of the Dungeon Teleport Service!"; next; switch(select("Reason for Election", "Cast a Vote", "Use Teleport Service", "Cancel")) { case 1: mes "[Cool Event Corp. Voting Staff]"; mes "Cool Event Corp. has been"; mes "planning to provide a new"; mes "Dungeon Teleport Service to"; mes "its customers, a service not"; mes "already provided by the Kafra"; mes "Corporation. However..."; next; mes "[Cool Event Corp. Voting Staff]"; mes "Kafra Corporation, which"; mes "already monopolizes the"; mes "public teleportation market,"; mes "actually also had plans to"; mes "provide a similar service."; next; mes "[Cool Event Corp. Voting Staff]"; mes "Because of technological"; mes "limitations, only one company"; mes "can be chosen as the provider"; mes "of this Dungeon Teleport Service. Hence, we will let the customers"; mes "decide through these elections."; next; mes "[Cool Event Corp. Voting Staff]"; mes "Multiple elections will be"; mes "held so that our customers"; mes "can test out the special services of each company for themselves."; mes "However, keep in mind that you must be eligible in order to vote."; next; mes "[Cool Event Corp. Voting Staff]"; mes "For voter eligibility"; mes "details, please visit our"; mes "headquarters in the city of"; mes "Lighthalzen located in the"; mes "Schwaltzvalt Republic."; mes "Thank you for your time."; break; case 2: //if (lhz_boss < 17) { // mes "[Cool Event Corp. Voting Staff]"; // mes "I'm sorry, but you are not"; // mes "eligible to vote at this time."; // mes "Please visit our headquarters"; // mes "in Lighthalzen for information"; // mes "related to acquiring voting rights. Thank you for your time."; // close2; // cutin "zonda_01",255; // end; //} //else { if ($DTS_Result == 0) { if (lhz_vote <= $DTS_VoteCount) { mes "[Cool Event Corp. Voting Staff]"; mes "Cool Event Corp.,"; mes "if chosen to provide the"; mes "Dungeon Teleport Service,"; mes "will teleport adventurers to"; mes "the following dungeons..."; next; mes " "; mes " "; if ($DTS_JondaWins == 0) { mes "^FF0000Byalan Dungeon, Level 3^000000"; } else if ($DTS_JondaWins == 1) { mes "^FF0000Byalan Dungeon, Level 3^000000"; mes "^FF0000Clock Tower, 3rd Floor^000000"; } else { mes "^FF0000Byalan Dungeon, Level 3^000000"; mes "^FF0000Clock Tower, 3rd Floor^000000"; mes "^FF0000Glast Heim Entrance^000000"; } next; mes "[Cool Event Corp. Voting Staff]"; mes "If you are interested in"; mes "these destinations, then"; mes "it would be in your best"; mes "interest to vote for us."; mes "Would you like to vote"; mes "for Cool Event Corp.?"; next; switch(select("No", "Yes")) { case 1: mes "[Cool Event Corp. Voting Staff]"; mes "Ah, I see... Well, if you"; mes "happen to change your mind,"; mes "feel free to come back and"; mes "cast your vote for Cool Event"; mes "Corp, alright? Have a nice day~"; break; case 2: lhz_vote = $DTS_VoteCount+1; ++$DTS_JondaVotes; mes "[Cool Event Corp. Voting Staff]"; mes "Thank you for your vote!"; mes "It's customers like you who"; mes "ensure the success and great"; mes "service that you have come to"; mes "expect from Cool Event Corp."; mes "Thank you and have a nice day~"; break; } } else { mes "[Cool Event Corp. Voting Staff]"; mes "I'm sorry, but you've"; mes "already cast your vote"; mes "in this election. However,"; mes "please don't let that stop you"; mes "from voting for Cool Event"; mes "Corp. in the next election~"; } } else if ($DTS_Result == 3) { if (lhz_vote <= $DTS_VoteCount) { mes "[Cool Event Corp. Voting Staff]"; mes "Unfortunately, there wasn't"; mes "enough voter turnout in the"; mes "last election, so we're holding"; mes "another election to determine"; mes "which company will provide the"; mes "Dungeon Teleport Service."; next; mes "[Cool Event Corp. Voting Staff]"; mes "Cool Event Corp.,"; mes "if chosen to provide the"; mes "Dungeon Teleport Service,"; mes "will teleport adventurers to"; mes "the following dungeons..."; next; mes " "; mes " "; if ($DTS_JondaWins == 0) { mes "^FF0000Byalan Dungeon, Level 3^000000"; } else if ($DTS_JondaWins == 1) { mes "^FF0000Byalan Dungeon, Level 3^000000"; mes "^FF0000Clock Tower, 3rd Floor^000000"; } else { mes "^FF0000Byalan Dungeon, Level 3^000000"; mes "^FF0000Clock Tower, 3rd Floor^000000"; mes "^FF0000Glast Heim Entrance^000000"; } next; mes "[Cool Event Corp. Voting Staff]"; mes "If you are interested in"; mes "these destinations, then"; mes "it would be in your best"; mes "interest to vote for us."; mes "Would you like to vote"; mes "for Cool Event Corp.?"; next; switch(select("No", "Yes")) { case 1: mes "[Cool Event Corp. Voting Staff]"; mes "Ah, I see... Well, if you"; mes "happen to change your mind,"; mes "feel free to come back and"; mes "cast your vote for Cool Event"; mes "Corp, alright? Have a nice day~"; break; case 2: lhz_vote = $DTS_VoteCount+1; ++$DTS_JondaVotes; mes "[Cool Event Corp. Voting Staff]"; mes "Thank you for your vote!"; mes "It's customers like you who"; mes "ensure the success and great"; mes "service that you have come to"; mes "expect from Cool Event Corp."; mes "Thank you and have a nice day~"; break; } } else { mes "[Cool Event Corp. Voting Staff]"; mes "Unfortunately, there wasn't"; mes "enough voter turnout in the"; mes "last election, so we're holding"; mes "another election to determine"; mes "which company will provide the"; mes "Dungeon Teleport Service."; next; mes "[Cool Event Corp. Voting Staff]"; mes "We appreciate that"; mes "you've already participated"; mes "in this second election by"; mes "casting your vote. Thank"; mes "you for your support~"; } } else { mes "[Cool Event Corp. Voting Staff]"; mes "I'm sorry, but an election is"; mes "not currently being held at this time. Please come and cast your"; mes "vote at the next election to decide which company will provide the"; mes "Dungeon Teleport Service."; } //} break; case 3: if ($DTS_Result == 1) { mes "[Cool Event Corp. Voting Staff]"; mes "Please remember that we"; mes "cannot accept Free Warp Tickets"; mes "or award Special Reserve Points"; mes "for this service. Now, please"; mes "choose your destination."; next; if ($DTS_JondaWins == 0) { switch(select("Byalan Dungeon, Level 3 -> 4,000 z", "Cancel")) { case 1: if (Zeny >= 4000) { Zeny -= 4000; cutin "zonda_01",255; warp "iz_dun02",234,206; end; } else { mes "[Cool Event Corp. Voting Staff]"; mes "I'm sorry, but you do"; mes "not have enough zeny to"; mes "teleport to this destination."; mes "The teleport fee is 4,000 zeny."; } break; case 2: mes "[Cool Event Corp. Voting Staff]"; mes "Always be assured that"; mes "Cool Event Corp. will do"; mes "everything in its power to"; mes "ensure the satisfaction of"; mes "its customers, young and old"; mes "and big and small. Thank you~"; break; } } else if ($DTS_JondaWins == 1) { switch(select("Byalan Dungeon, Level 3 -> 4,000 z", "Clock Tower, 3rd Floor -> 4,000 z", "Cancel")) { case 1: if (Zeny >= 4000) { Zeny -= 4000; cutin "zonda_01",255; warp "iz_dun02",234,206; end; } else { mes "[Cool Event Corp. Voting Staff]"; mes "I'm sorry, but you do"; mes "not have enough zeny to"; mes "teleport to this destination."; mes "The teleport fee is 4,000 zeny."; } break; case 2: if (Zeny >= 4000) { Zeny -= 4000; cutin "zonda_01",255; warp "c_tower3",64,143; end; } else { mes "[Cool Event Corp. Voting Staff]"; mes "I'm sorry, but you do"; mes "not have enough zeny to"; mes "teleport to this destination."; mes "The teleport fee is 4,000 zeny."; } break; case 3: mes "[Cool Event Corp. Voting Staff]"; mes "Always be assured that"; mes "Cool Event Corp. will do"; mes "everything in its power to"; mes "ensure the satisfaction of"; mes "its customers, young and old"; mes "and big and small. Thank you~"; break; } } else { mes "[Cool Event Corp. Voting Staff]"; mes "Please remember that we"; mes "cannot accept Free Warp Tickets"; mes "or award Special Reserve Points"; mes "for this service. Now, please"; mes "choose your destination."; next; switch(select("Byalan Dungeon, Level 3 -> 4,000 z", "Clock Tower, 3rd Floor -> 4,000 z", "Glast Heim Entrance -> 4,000 z", "Cancel")) { case 1: if (Zeny >= 4000) { Zeny -= 4000; cutin "zonda_01",255; warp "iz_dun02",234,206; end; } else { mes "[Cool Event Corp. Voting Staff]"; mes "I'm sorry, but you do"; mes "not have enough zeny to"; mes "teleport to this destination."; mes "The teleport fee is 4,000 zeny."; } break; case 2: if (Zeny >= 4000) { Zeny -= 4000; cutin "zonda_01",255; warp "c_tower3",64,143; end; } else { mes "[Cool Event Corp. Voting Staff]"; mes "I'm sorry, but you do"; mes "not have enough zeny to"; mes "teleport to this destination."; mes "The teleport fee is 4,000 zeny."; } break; case 3: if (Zeny >= 4000) { Zeny -= 4000; cutin "zonda_01",255; warp "glast_01",368,303; end; } else { mes "[Cool Event Corp. Voting Staff]"; mes "I'm sorry, but you do"; mes "not have enough zeny to"; mes "teleport to this destination."; mes "The teleport fee is 4,000 zeny."; } break; case 4: mes "[Cool Event Corp. Voting Staff]"; mes "Always be assured that"; mes "Cool Event Corp. will do"; mes "everything in its power to"; mes "ensure the satisfaction of"; mes "its customers, young and old"; mes "and big and small. Thank you~"; break; } } } else if ($DTS_Result == 2) { mes "[Cool Event Corp. Voting Staff]"; mes "I'm sorry, but Cool Event"; mes "Corp. does not currently offer"; mes "the Dungeon Teleport Service"; mes "due to the results of the last"; mes "election. Please vote for us"; mes "next time, alright? Good day~"; } else { mes "[Cool Event Corp. Voting Staff]"; mes "I'm sorry, but the"; mes "Dungeon Teleport Service is"; mes "unavailable during elections"; mes "and will be reactivated after the election results are announced."; mes "Thank you and have a nice day."; } break; case 4: mes "[Cool Event Corp. Voting Staff]"; mes "Cool Event Corp. is always"; mes "working to make sure that"; mes "not only are our customers"; mes "satisfied, but that we also"; mes "exceed your utmost standards."; mes "Thank you and have a good day."; break; } close2; cutin "zonda_01",255; end; } yuno,153,191,6 duplicate(VotingStaffCCE) Cool Event Staff#yuno 4_M_ZONDAMAN prontera,147,125,6 duplicate(VotingStaffCCE) Cool Event Staff#prt 4_M_ZONDAMAN moc_ruins,104,133,6 duplicate(VotingStaffCCE) Cool Event Staff#moc 4_M_ZONDAMAN geffen,117,37,6 duplicate(VotingStaffCCE) Cool Event Staff#gef 4_M_ZONDAMAN payon,153,182,6 duplicate(VotingStaffCCE) Cool Event Staff#pay 4_M_ZONDAMAN alberta,114,70,6 duplicate(VotingStaffCCE) Cool Event Staff#alb 4_M_ZONDAMAN aldebaran,138,102,6 duplicate(VotingStaffCCE) Cool Event Staff#alde 4_M_ZONDAMAN lighthalzen,154,60,6 duplicate(VotingStaffCCE) Cool Event Staff#lhz 4_M_ZONDAMAN yuno,103,225,0 script Scrutiny Association#5 FAKE_NPC,{ OnInit: initnpctimer; end; OnEnable: initnpctimer; end; OnTimer7200000: stopnpctimer; if (($DTS_Result == 0) || ($DTS_Result == 3)) { announce "Currently, the Dungeon Teleport Service Provider Election is being held in all major cities. Your participation is appreciated.",bc_all,"0x70dbdb"; } donpcevent "Scrutiny Association#5::OnEnable"; end; } einbroch,248,71,0 script Scrutiny Association#6 FAKE_NPC,{ OnEnable: initnpctimer; end; OnTimer1000: announce "All the votes for the Dungeon Teleport Service Provider Election have been received and counted.",bc_all,"0x70dbdb"; end; OnTimer5000: announce "The results are now in...",bc_all,"0x70dbdb"; end; OnTimer10000: announce "This time, Cool Event Corp. will be the Dungeon Teleport Service Provider.",bc_all,"0x70dbdb"; end; OnTimer15000: announce "Many thanks to all of you who have voted and shown your support.",bc_all,"0x70dbdb"; stopnpctimer; end; } einbroch,249,71,0 script Scrutiny Association#7 FAKE_NPC,{ OnEnable: initnpctimer; end; OnTimer1000: announce "All the votes for the Dungeon Teleport Service Provider Election have been received and counted.",bc_all,"0x70dbdb"; end; OnTimer5000: announce "The results are now in...",bc_all,"0x70dbdb"; end; OnTimer10000: announce "This time, Kafra Corporation will be the Dungeon Teleport Service Provider.",bc_all,"0x70dbdb"; end; OnTimer15000: announce "Many thanks to all of you who have voted and shown your support.",bc_all,"0x70dbdb"; stopnpctimer; end; } /* // GM only NPC used for modifying values related to the DTS system. // Disabled in official script. sec_in02,17,160,4 script Vote Globalvar Girl#yuno 4_F_OPERATION,{ callfunc "F_GM_NPC"; mes "[Christy's Maid]"; mes "Lady Christy!"; next; if (callfunc("F_GM_NPC",1854,0) == 1) { mes "[Christy's Maid]"; mes "I am Lady Christy's Maid."; next; switch(select("Globalvar Check", "Setitem Zero", "Change Glbalvar")) { case 1: mes "Current GlobalVar are"; next; mes "[Christy's Maid]"; mes "Global 1 - Voting Time check : "+$DTS_Time+""; mes "Global 2 - Cool Event Corp. Vote Numbers : "+$DTS_JondaVotes+""; mes "Global 3 - Kafra Vote Numbers : "+$DTS_KafraVotes+""; mes "Global 4 - Winner : "+$DTS_Result+""; mes "Global 5 - Teleport Service Period Check: "+$DTS_PeriodCheck+""; mes "Global 6 - Kafra Points : "+$DTS_KafraWins+""; mes "Global 7 - Cool Event Corp. Points : "+$DTS_JondaWins+""; mes "Global 8 - Setitem Check : "+$DTS_VoteCount+""; next; mes "[Christy's Maid]"; mes "Current Setitem value is "+lhz_vote+"."; close; case 2: lhz_vote = 0; close; case 3: mes "[Christy's Maid]"; mes "Which Globalvar value would you like to change?"; next; switch(select("1 - Voting Time", "2 - Cool Event Corp. Vote Numbers", "3 - Kafra Vote Numbers", "4 - Winner", "5 - Teleport Service Period", "6 - Kafra Warp Number", "7 - Cool Event Corp. Warp Number", "8 - Setitem Value")) { case 1: mes "[Christy's Maid]"; mes "Please enter a number among 0 and 1000."; next; input(.@input); if (.@input < 0 || .@input > 1000) { mes "[Christy's Maid]"; mes "The value is incorrect."; close; } $DTS_Time = .@input; mes "[Christy's Maid]"; mes "The value has been modified."; close; case 2: mes "[Christy's Maid]"; mes "Please enter a number among 0 and 1000."; next; input(.@input); if (.@input < 0 || .@input > 1000) { mes "[Christy's Maid]"; mes "The value is incorrect."; close; } $DTS_JondaVotes = .@input; mes "[Christy's Maid]"; mes "The value has been modified."; close; case 3: mes "[Christy's Maid]"; mes "Please enter a number among 0 and 1000."; next; input(.@input); if (.@input < 0 || .@input > 1000) { mes "[Christy's Maid]"; mes "The value is incorrect."; close; } $DTS_KafraVotes = .@input; mes "[Christy's Maid]"; mes "The value has been modified."; close; case 4: mes "[Christy's Maid]"; mes "Please enter a number among 0 and 3."; next; input(.@input); if (.@input < 0 || .@input > 3) { mes "[Christy's Maid]"; mes "The value is incorrect."; close; } $DTS_Result = .@input; mes "[Christy's Maid]"; mes "The value has been modified."; close; case 5: mes "[Christy's Maid]"; mes "Please enter a number among 0 and 1000."; next; input(.@input); if (.@input < 0 || .@input > 1000) { mes "[Christy's Maid]"; mes "The value is incorrect."; close; } $DTS_PeriodCheck = .@input; mes "[Christy's Maid]"; mes "The value has been modified."; close; case 6: mes "[Christy's Maid]"; mes "Please enter a number among 0 and 2."; next; input(.@input); if (.@input < 0 || .@input > 2) { mes "[Christy's Maid]"; mes "The value is incorrect."; close; } $DTS_KafraWins = .@input; mes "[Christy's Maid]"; mes "The value has been modified."; close; case 7: mes "[Christy's Maid]"; mes "Please enter a number among 0 and 2."; next; input(.@input); if (.@input < 0 || .@input > 2) { mes "[Christy's Maid]"; mes "The value is incorrect."; close; } $DTS_JondaWins = .@input; mes "[Christy's Maid]"; mes "The value has been modified."; close; case 8: mes "[Christy's Maid]"; mes "Please enter a number among 0 and 10000."; next; input(.@input); if (.@input < 0 || .@input > 10000) { mes "[Christy's Maid]"; mes "The value is incorrect."; close; } $DTS_VoteCount = .@input; mes "[Christy's Maid]"; mes "The value has been modified."; close; } } } else { mes "[Christy's Maid]"; mes "Lady Christy..."; close; } } */