//================= 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 <http://www.gnu.org/licenses/>.
//=========================================================================
//= 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;
}
}
*/