Jump to content
  • 0

How to modifiy disguise NPC to grant cash point instead of item. [SOLVED]


Question

Posted (edited)

Hello, I am confused how to make the disguise NPC to give the player free cash point. I searched for info about it and some people recommend me to put to

#CASHPOINTS += <amount>;

make it grants the player the cash. But I do not know in which part I should put this. I would be grateful if someone can explain to me how to solve this ?
Thanks.

disguise.txt

Edited by Rizz

3 answers to this question

Recommended Posts

  • 0
Posted
//===== rAthena Script =======================================
//= Disguise Event
//===== By: ==================================================
//= GmOcean
//===== Current Version: =====================================
//= 5.1
//===== Compatible With: =====================================
//= rAthena Project
//===== Description: =========================================
//= Guess a monster name correctly for prizes.
//= 
//= NOTE: Requires PCRE library installed.
//===== Additional Comments: =================================
//= 5.0 Last update by GmOcean.
//= 5.1 Cleaned and standardized, mostly. [Euphy]
//============================================================

prontera,160,155,4	script	Disguise Event	795,{

	// Currently set to run every two hours.
	// To change times, edit the OnClock labels below.

	set .@GMLevel,60;	// GM level required to access NPC.
	set .@n$,"[^0000FFDisguise NPC^000000]";

	if (getgmlevel()>=.@GMLevel) {
		mes .@n$;
		mes "Select an option.";
		next;
		switch(select("Turn ON/OFF Event:Event Settings")) {
		case 1:
			mes .@n$;
			if (.EventON) {
				mes "The Event is currently: [^0000FFON^000000]";
				mes "Would you like to turn it OFF?";
			} else {
				mes "The Event is currently: [^FF0000OFF^000000]";
				mes "Would you like to turn it ON?";
			}
			if(select("Yes:No")==2) close;
			if (.EventON) {
				set .EventON,0; set .Timer,0;
				setnpctimer 0; stopnpctimer;
				announce "A GM has decided to turn the Disguise Event off. As a result no further prizes will be given.",bc_map | bc_blue;
				deletepset 1;
				setnpcdisplay "Disguise Event",795;
				close;
			}
			set .EventON,1; set .Timer,1; setnpctimer 0; initnpctimer;
			set .ResetCounter,.ResetCounter+1;
			announce "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue;
			announce "The Event is being held in Prontera.",bc_all | bc_blue;
			close;
		case 2:
			mes .@n$;
			mes "Pick a setting to modify.";
			next;
			switch(select("Monster Display:Number of Rounds")) {
			case 1:
				setarray .@r$[0],"Disguise as all monsters.","Disguise as MVPs only.";
				mes .@n$;
				mes "Choose a disguise rule.";
				next;
				set .Rule, select(implode(.@r$,":"));
				mes .@n$;
				mes "The Disguise Rule has been set:";
				mes "  > ^0055FF"+.@r$[.Rule-1]+"^000000";
				close;
			case 2:
				mes .@n$;
				mes "Input the number of rounds you want the event to last.";
				mes "Current number: [^0000FF"+.Rounds+"^000000]";
				next;
				input .@Rounds;
				set .Rounds,.@Rounds;
				mes .@n$;
				mes "The number of rounds has been changed to "+.Rounds+".";
				close;
			}
		}
	}
	if (.EventON) end;
	mes .@n$;
	mes "Welcome.";
	mes "How may I be of assistance?";
	if(select("Information:Nothing, just passing through.")==2) close;
	next;
	mes .@n$;
	mes "This event is quite simple.";
	mes "At the start of the event, I will";
	mes "disguise myself as a random";
	mes "monster. You have to shout";
	mes "that monster's name out loud.";
	next;
	mes "If you are correct, you will receive";
	mes "a prize. If not, keep trying!";
	mes "That's all that there is to this event.";
	close;

OnInit:
	set .EventON,0;
	set .Wait,0;
	set .Winner,0;
	set .ResetCounter,0;
	set .Rounds,10;
	set .Rule,1;
	setarray .MVP[0],1038,1039,1046,1059,1086,1087,1112,1115,1147,1150,1157,1159,1190,1251,1252,1272,1312,1373,
	                  1389,1399,1418,1492,1502,1511,1583,1623,1630,1646,1647,1648,1649,1650,1651,1658,1685,1688,
				   1708,1719,1734,1751,1768,1779,1785,1802,1832,1871,1874,1885,1917,1980,2022,2068,2087,2131,
				   2156,2165;
	set .BlackList$, "1003,1006,1017,1021,1022,1027,1043,1075,1136,1137,1168," + 
	    "1171,1172,1173,1181,1187,1210,1217,1218,1222,1223,1224,1225,1226,1227,1228," + 
	    "1233,1284,1407,1411,1414,1495,1501,1900,1996,2000,2001,2002,2003,2004," + 
	    "2005,2006,2007,2011,2012,2025,2028,2029,2030,2031,2032,2033,2034,2035," + 
	    "2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049," + 
	    "2050,2051,2052,2053,2054,2055,2056,2057,2058,2059,2060,2061,2062,2063," + 
	    "2064,2065,2066,2067,2075,2076,2077,2078,2079,2080,2081,2083,2084,2085," + 
	    "2086,2087,2088,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099," + 
	    "2100,2101,2012,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113," + 
	    "2114,2115,2116,2117,2118,2119,2120,2121,2123,2124,2125,1496,";
	end;
OnClock0000:
OnClock0200:
OnClock0400:
OnClock0600:
OnClock0800:
OnClock1000:
OnClock1200:
OnClock1400:
OnClock1600:
OnClock1800:
OnClock2000:
OnClock2200:
	set .ResetCounter,.ResetCounter+1;
	set .EventON,1;
	set .Timer,1;
	set .Wait,1;
	announce "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue;
	announce "The Event is being held in Prontera.",bc_all | bc_blue;
	setnpctimer 0;
	initnpctimer;
	end;
OnTimer10000:
	if (.Timer || .Change) end;
	set .Wait,0;
	goto iDisguise;
	end;
OnTimer30000:
	if (.Timer) end;
	set .Change,0;
	setnpcdisplay "Disguise Event",795;
	npctalk "Disguise Event : You took too long to guess what I was. Please wait 10 seconds while I disguise again.";
	specialeffect EF_DETECT2;
	set $MonsterName$,"";
	deletepset 1;
	stopnpctimer;
	setnpctimer 0;
	initnpctimer;
	end;
OnTimer60000:
	if (.Timer!=1) end;
	announce "The Disguise Event will begin in 2 minutes.",bc_all | bc_blue;
	announce "The Event is being held in Prontera.",bc_all | bc_blue;
	end;
OnTimer120000:
	if (.Timer!=1) end;
	announce "The Disguise Event will begin 1 minute.",bc_all | bc_blue;
	announce "The Event is being held in Prontera.",bc_all | bc_blue;
	end;
OnTimer180000:
	if (.Timer!=1) end;
	announce "The Disguise Event has begun!",bc_all | bc_blue;
	announce "The Event is being held in Prontera.",bc_all | bc_blue;
	set .Timer,0; stopnpctimer;
	setnpctimer 0; initnpctimer;
iDisguise:
	if (.Rule==1) {
		set .Winner,0;
		set .Monster,1000+rand(1,995);
		if (compare(","+.BlackList$+"," , ","+.Monster+",")) goto iDisguise;
		if (.Monster==.LastMonster) goto iDisguise;
		set .LastMonster,.Monster;
		set $MonsterName$,getmonsterinfo(.Monster,0);
	}
	if (.Rule==2) {
		set .Winner,0;
		set .Monster,rand(49);
		set $MonsterName$,getmonsterinfo(.MVP[.Monster],0);
	}
	deletepset 1;
	defpattern 1,"([^:]+):.\\s*"+$MonsterName$+".*", "iCorrect";
	activatepset 1;
	if (.Rule==1) setnpcdisplay "Disguise Event",.Monster;
	if (.Rule==2) setnpcdisplay "Disguise Event",.MVP[.Monster];
	set .Change,1;
	setnpctimer 0;
	end;
iCorrect:
	if (.Winner) {
		dispbottom "Someone has already won this round.";
		end;
	}
	set .Winner,1;
	set .RoundCount,.RoundCount+1;
	deletepset 1;
	activatepset 1;
	set #CASHPOINTS,#CASHPOINTS + 10;
	announce strcharinfo(0)+" is correct! I was disguised as: "+$MonsterName$+"",bc_map | bc_blue;
	if (.RoundCount>=.Rounds) {
		setnpcdisplay "Disguise Event",795;
		set .RoundCount,0; set .Change,0; set .EventON,0;
		setnpctimer 0; stopnpctimer;
		npctalk "Disguise Event : Thank you all for playing. That was the last round of the Disguise Event. Come play again later.";
		end;
	}
	setnpcdisplay "Disguise Event",795;
	set .Change,0;
	setnpctimer 0;
	end;
}

Find  set #CASHPOINTS,#CASHPOINTS + 10;  and edit 10 to amount you want

  • Love 2
  • 0
Posted
45 minutes ago, Smoker said:

//===== rAthena Script =======================================
//= Disguise Event
//===== By: ==================================================
//= GmOcean
//===== Current Version: =====================================
//= 5.1
//===== Compatible With: =====================================
//= rAthena Project
//===== Description: =========================================
//= Guess a monster name correctly for prizes.
//= 
//= NOTE: Requires PCRE library installed.
//===== Additional Comments: =================================
//= 5.0 Last update by GmOcean.
//= 5.1 Cleaned and standardized, mostly. [Euphy]
//============================================================

prontera,160,155,4	script	Disguise Event	795,{

	// Currently set to run every two hours.
	// To change times, edit the OnClock labels below.

	set .@GMLevel,60;	// GM level required to access NPC.
	set .@n$,"[^0000FFDisguise NPC^000000]";

	if (getgmlevel()>=.@GMLevel) {
		mes .@n$;
		mes "Select an option.";
		next;
		switch(select("Turn ON/OFF Event:Event Settings")) {
		case 1:
			mes .@n$;
			if (.EventON) {
				mes "The Event is currently: [^0000FFON^000000]";
				mes "Would you like to turn it OFF?";
			} else {
				mes "The Event is currently: [^FF0000OFF^000000]";
				mes "Would you like to turn it ON?";
			}
			if(select("Yes:No")==2) close;
			if (.EventON) {
				set .EventON,0; set .Timer,0;
				setnpctimer 0; stopnpctimer;
				announce "A GM has decided to turn the Disguise Event off. As a result no further prizes will be given.",bc_map | bc_blue;
				deletepset 1;
				setnpcdisplay "Disguise Event",795;
				close;
			}
			set .EventON,1; set .Timer,1; setnpctimer 0; initnpctimer;
			set .ResetCounter,.ResetCounter+1;
			announce "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue;
			announce "The Event is being held in Prontera.",bc_all | bc_blue;
			close;
		case 2:
			mes .@n$;
			mes "Pick a setting to modify.";
			next;
			switch(select("Monster Display:Number of Rounds")) {
			case 1:
				setarray .@r$[0],"Disguise as all monsters.","Disguise as MVPs only.";
				mes .@n$;
				mes "Choose a disguise rule.";
				next;
				set .Rule, select(implode(.@r$,":"));
				mes .@n$;
				mes "The Disguise Rule has been set:";
				mes "  > ^0055FF"+.@r$[.Rule-1]+"^000000";
				close;
			case 2:
				mes .@n$;
				mes "Input the number of rounds you want the event to last.";
				mes "Current number: [^0000FF"+.Rounds+"^000000]";
				next;
				input .@Rounds;
				set .Rounds,.@Rounds;
				mes .@n$;
				mes "The number of rounds has been changed to "+.Rounds+".";
				close;
			}
		}
	}
	if (.EventON) end;
	mes .@n$;
	mes "Welcome.";
	mes "How may I be of assistance?";
	if(select("Information:Nothing, just passing through.")==2) close;
	next;
	mes .@n$;
	mes "This event is quite simple.";
	mes "At the start of the event, I will";
	mes "disguise myself as a random";
	mes "monster. You have to shout";
	mes "that monster's name out loud.";
	next;
	mes "If you are correct, you will receive";
	mes "a prize. If not, keep trying!";
	mes "That's all that there is to this event.";
	close;

OnInit:
	set .EventON,0;
	set .Wait,0;
	set .Winner,0;
	set .ResetCounter,0;
	set .Rounds,10;
	set .Rule,1;
	setarray .MVP[0],1038,1039,1046,1059,1086,1087,1112,1115,1147,1150,1157,1159,1190,1251,1252,1272,1312,1373,
	                  1389,1399,1418,1492,1502,1511,1583,1623,1630,1646,1647,1648,1649,1650,1651,1658,1685,1688,
				   1708,1719,1734,1751,1768,1779,1785,1802,1832,1871,1874,1885,1917,1980,2022,2068,2087,2131,
				   2156,2165;
	set .BlackList$, "1003,1006,1017,1021,1022,1027,1043,1075,1136,1137,1168," + 
	    "1171,1172,1173,1181,1187,1210,1217,1218,1222,1223,1224,1225,1226,1227,1228," + 
	    "1233,1284,1407,1411,1414,1495,1501,1900,1996,2000,2001,2002,2003,2004," + 
	    "2005,2006,2007,2011,2012,2025,2028,2029,2030,2031,2032,2033,2034,2035," + 
	    "2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049," + 
	    "2050,2051,2052,2053,2054,2055,2056,2057,2058,2059,2060,2061,2062,2063," + 
	    "2064,2065,2066,2067,2075,2076,2077,2078,2079,2080,2081,2083,2084,2085," + 
	    "2086,2087,2088,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099," + 
	    "2100,2101,2012,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113," + 
	    "2114,2115,2116,2117,2118,2119,2120,2121,2123,2124,2125,1496,";
	end;
OnClock0000:
OnClock0200:
OnClock0400:
OnClock0600:
OnClock0800:
OnClock1000:
OnClock1200:
OnClock1400:
OnClock1600:
OnClock1800:
OnClock2000:
OnClock2200:
	set .ResetCounter,.ResetCounter+1;
	set .EventON,1;
	set .Timer,1;
	set .Wait,1;
	announce "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue;
	announce "The Event is being held in Prontera.",bc_all | bc_blue;
	setnpctimer 0;
	initnpctimer;
	end;
OnTimer10000:
	if (.Timer || .Change) end;
	set .Wait,0;
	goto iDisguise;
	end;
OnTimer30000:
	if (.Timer) end;
	set .Change,0;
	setnpcdisplay "Disguise Event",795;
	npctalk "Disguise Event : You took too long to guess what I was. Please wait 10 seconds while I disguise again.";
	specialeffect EF_DETECT2;
	set $MonsterName$,"";
	deletepset 1;
	stopnpctimer;
	setnpctimer 0;
	initnpctimer;
	end;
OnTimer60000:
	if (.Timer!=1) end;
	announce "The Disguise Event will begin in 2 minutes.",bc_all | bc_blue;
	announce "The Event is being held in Prontera.",bc_all | bc_blue;
	end;
OnTimer120000:
	if (.Timer!=1) end;
	announce "The Disguise Event will begin 1 minute.",bc_all | bc_blue;
	announce "The Event is being held in Prontera.",bc_all | bc_blue;
	end;
OnTimer180000:
	if (.Timer!=1) end;
	announce "The Disguise Event has begun!",bc_all | bc_blue;
	announce "The Event is being held in Prontera.",bc_all | bc_blue;
	set .Timer,0; stopnpctimer;
	setnpctimer 0; initnpctimer;
iDisguise:
	if (.Rule==1) {
		set .Winner,0;
		set .Monster,1000+rand(1,995);
		if (compare(","+.BlackList$+"," , ","+.Monster+",")) goto iDisguise;
		if (.Monster==.LastMonster) goto iDisguise;
		set .LastMonster,.Monster;
		set $MonsterName$,getmonsterinfo(.Monster,0);
	}
	if (.Rule==2) {
		set .Winner,0;
		set .Monster,rand(49);
		set $MonsterName$,getmonsterinfo(.MVP[.Monster],0);
	}
	deletepset 1;
	defpattern 1,"([^:]+):.\\s*"+$MonsterName$+".*", "iCorrect";
	activatepset 1;
	if (.Rule==1) setnpcdisplay "Disguise Event",.Monster;
	if (.Rule==2) setnpcdisplay "Disguise Event",.MVP[.Monster];
	set .Change,1;
	setnpctimer 0;
	end;
iCorrect:
	if (.Winner) {
		dispbottom "Someone has already won this round.";
		end;
	}
	set .Winner,1;
	set .RoundCount,.RoundCount+1;
	deletepset 1;
	activatepset 1;
	set #CASHPOINTS,#CASHPOINTS + 10;
	announce strcharinfo(0)+" is correct! I was disguised as: "+$MonsterName$+"",bc_map | bc_blue;
	if (.RoundCount>=.Rounds) {
		setnpcdisplay "Disguise Event",795;
		set .RoundCount,0; set .Change,0; set .EventON,0;
		setnpctimer 0; stopnpctimer;
		npctalk "Disguise Event : Thank you all for playing. That was the last round of the Disguise Event. Come play again later.";
		end;
	}
	setnpcdisplay "Disguise Event",795;
	set .Change,0;
	setnpctimer 0;
	end;
}

Find  set #CASHPOINTS,#CASHPOINTS + 10;  and edit 10 to amount you want

Thank you so much my friend ?

  • 0
Posted

even it setted in 10 rounds the npc dont stop disguising .. its unlimited

//===== rAthena Script =======================================
//= Disguise Event
//===== By: ==================================================
//= GmOcean
//===== Current Version: =====================================
//= 5.1
//===== Compatible With: =====================================
//= rAthena Project
//===== Description: =========================================
//= Guess a monster name correctly for prizes.
//= 
//= NOTE: Requires PCRE library installed.
//===== Additional Comments: =================================
//= 5.0 Last update by GmOcean.
//= 5.1 Cleaned and standardized, mostly. [Euphy]
//============================================================

prontera,160,155,4	script	Disguise Event	795,{

	// Currently set to run every two hours.
	// To change times, edit the OnClock labels below.

	set .@GMLevel,60;	// GM level required to access NPC.
	set .@n$,"[^0000FFDisguise NPC^000000]";

	if (getgmlevel()>=.@GMLevel) {
		mes .@n$;
		mes "Select an option.";
		next;
		switch(select("Turn ON/OFF Event:Event Settings")) {
		case 1:
			mes .@n$;
			if (.EventON) {
				mes "The Event is currently: [^0000FFON^000000]";
				mes "Would you like to turn it OFF?";
			} else {
				mes "The Event is currently: [^FF0000OFF^000000]";
				mes "Would you like to turn it ON?";
			}
			if(select("Yes:No")==2) close;
			if (.EventON) {
				set .EventON,0; set .Timer,0;
				setnpctimer 0; stopnpctimer;
				announce "A GM has decided to turn the Disguise Event off. As a result no further prizes will be given.",bc_map | bc_blue;
				deletepset 1;
				setnpcdisplay "Disguise Event",795;
				close;
			}
			set .EventON,1; set .Timer,1; setnpctimer 0; initnpctimer;
			set .ResetCounter,.ResetCounter+1;
			announce "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue;
			announce "The Event is being held in Prontera.",bc_all | bc_blue;
			close;
		case 2:
			mes .@n$;
			mes "Pick a setting to modify.";
			next;
			switch(select("Monster Display:Number of Rounds")) {
			case 1:
				setarray .@r$[0],"Disguise as all monsters.","Disguise as MVPs only.";
				mes .@n$;
				mes "Choose a disguise rule.";
				next;
				set .Rule, select(implode(.@r$,":"));
				mes .@n$;
				mes "The Disguise Rule has been set:";
				mes "  > ^0055FF"+.@r$[.Rule-1]+"^000000";
				close;
			case 2:
				mes .@n$;
				mes "Input the number of rounds you want the event to last.";
				mes "Current number: [^0000FF"+.Rounds+"^000000]";
				next;
				input .@Rounds;
				set .Rounds,.@Rounds;
				mes .@n$;
				mes "The number of rounds has been changed to "+.Rounds+".";
				close;
			}
		}
	}
	if (.EventON) end;
	mes .@n$;
	mes "Welcome.";
	mes "How may I be of assistance?";
	if(select("Information:Nothing, just passing through.")==2) close;
	next;
	mes .@n$;
	mes "This event is quite simple.";
	mes "At the start of the event, I will";
	mes "disguise myself as a random";
	mes "monster. You have to shout";
	mes "that monster's name out loud.";
	next;
	mes "If you are correct, you will receive";
	mes "a prize. If not, keep trying!";
	mes "That's all that there is to this event.";
	close;

OnInit:
	set .EventON,0;
	set .Wait,0;
	set .Winner,0;
	set .ResetCounter,0;
	set .Rounds,10;
	set .Rule,1;
	setarray .MVP[0],1038,1039,1046,1059,1086,1087,1112,1115,1147,1150,1157,1159,1190,1251,1252,1272,1312,1373,
	                  1389,1399,1418,1492,1502,1511,1583,1623,1630,1646,1647,1648,1649,1650,1651,1658,1685,1688,
				   1708,1719,1734,1751,1768,1779,1785,1802,1832,1871,1874,1885,1917,1980,2022,2068,2087,2131,
				   2156,2165;
	set .BlackList$, "1003,1006,1017,1021,1022,1027,1043,1075,1136,1137,1168," + 
	    "1171,1172,1173,1181,1187,1210,1217,1218,1222,1223,1224,1225,1226,1227,1228," + 
	    "1233,1284,1407,1411,1414,1495,1501,1900,1996,2000,2001,2002,2003,2004," + 
	    "2005,2006,2007,2011,2012,2025,2028,2029,2030,2031,2032,2033,2034,2035," + 
	    "2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049," + 
	    "2050,2051,2052,2053,2054,2055,2056,2057,2058,2059,2060,2061,2062,2063," + 
	    "2064,2065,2066,2067,2075,2076,2077,2078,2079,2080,2081,2083,2084,2085," + 
	    "2086,2087,2088,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099," + 
	    "2100,2101,2012,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113," + 
	    "2114,2115,2116,2117,2118,2119,2120,2121,2123,2124,2125,1496,";
	end;
OnClock0050:
OnClock0250:
OnClock0450:
OnClock0650:
OnClock0850:
OnClock1050:
OnClock1250:
OnClock1450:
OnClock1650:
OnClock1850:
OnClock2050:
OnClock2250:
	set .ResetCounter,.ResetCounter+1;
	set .EventON,1;
	set .Timer,1;
	set .Wait,1;
	announce "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue;
	announce "The Event is being held in Prontera.",bc_all | bc_blue;
	setnpctimer 0;
	initnpctimer;
	end;
OnTimer10000:
	if (.Timer || .Change) end;
	set .Wait,0;
	goto iDisguise;
	end;
OnTimer30000:
	if (.Timer) end;
	set .Change,0;
	setnpcdisplay "Disguise Event",795;
	npctalk "Disguise Event : You took too long to guess what I was. Please wait 10 seconds while I disguise again.";
	specialeffect EF_DETECT2;
	set $MonsterName$,"";
	deletepset 1;
	stopnpctimer;
	setnpctimer 0;
	initnpctimer;
	end;
OnTimer60000:
	if (.Timer!=1) end;
	announce "The Disguise Event will begin in 2 minutes.",bc_all | bc_blue;
	announce "The Event is being held in Prontera.",bc_all | bc_blue;
	end;
OnTimer120000:
	if (.Timer!=1) end;
	announce "The Disguise Event will begin 1 minute.",bc_all | bc_blue;
	announce "The Event is being held in Prontera.",bc_all | bc_blue;
	end;
OnTimer180000:
	if (.Timer!=1) end;
	announce "The Disguise Event has begun!",bc_all | bc_blue;
	announce "The Event is being held in Prontera.",bc_all | bc_blue;
	set .Timer,0; stopnpctimer;
	setnpctimer 0; initnpctimer;
iDisguise:
	if (.Rule==1) {
		set .Winner,0;
		set .Monster,1000+rand(1,995);
		if (compare(","+.BlackList$+"," , ","+.Monster+",")) goto iDisguise;
		if (.Monster==.LastMonster) goto iDisguise;
		set .LastMonster,.Monster;
		set $MonsterName$,getmonsterinfo(.Monster,0);
	}
	if (.Rule==2) {
		set .Winner,0;
		set .Monster,rand(49);
		set $MonsterName$,getmonsterinfo(.MVP[.Monster],0);
	}
	deletepset 1;
	defpattern 1,"([^:]+):.\\s*"+$MonsterName$+".*", "iCorrect";
	activatepset 1;
	if (.Rule==1) setnpcdisplay "Disguise Event",.Monster;
	if (.Rule==2) setnpcdisplay "Disguise Event",.MVP[.Monster];
	set .Change,1;
	setnpctimer 0;
	end;
iCorrect:
	if (.Winner) {
		dispbottom "Someone has already won this round.";
		end;
	}
	set .Winner,1;
	set .RoundCount,.RoundCount+1;
	deletepset 1;
	activatepset 1;
	set #CASHPOINTS,#CASHPOINTS + 2;
	announce strcharinfo(0)+" is correct! I was disguised as: "+$MonsterName$+"",bc_map | bc_blue;
	if (.RoundCount>=.Rounds) {
		setnpcdisplay "Disguise Event",795;
		set .RoundCount,0; set .Change,0; set .EventON,0;
		setnpctimer 0; stopnpctimer;
		npctalk "Disguise Event : Thank you all for playing. That was the last round of the Disguise Event. Come play again later.";
		end;
	}
	setnpcdisplay "Disguise Event",795;
	set .Change,0;
	setnpctimer 0;
	end;
}

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...