Jump to content

mrlongshen

Members
  • Content Count

    1126
  • Joined

  • Last visited

  • Days Won

    3

Posts posted by mrlongshen


  1. @@AnnieRuru

    Yeah..

    here my script..

    //===== Hercules Script ======================================//= Disguise Event//===== By: ==================================================//= GmOcean//===== Current Version: =====================================//= 5.1//===== Additional Comments: =================================//= Note: This script requires PCRE to run properly.//= 5.0 Last update by GmOcean.//= 5.1 Cleaned and standardized, mostly. [Euphy]//= 5.2 Updated to current Hercules syntax. [Winterfox]//============================================================new_4-4,131,190,5	script	Disguise Event	4_M_NFDEADMAN,{	// Currently set to run every two hours.	// To change times, edit the OnClock labels below.	.@GroupId = 80;	// Group ID required to access NPC.	.@n$ = "[^0000FFDisguise NPC^000000]";	if ( getgroupid() >= .@GroupId) {		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) {				.EventON = 0; 				.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",  4_M_NFDEADMAN );				close;			}			.EventON = 1;			.Timer = 1;			initnpctimer;			.ResetCounter++;			announce( "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue );			announce( "The Event is being held in Event Room.",bc_all | bc_blue );			close;		case 2:			mes( .@n$ );			mes( "Pick a setting to modify." );			next;			switch( select( "Monster Display:Number of Rounds:Prize Settings" ) ) {			case 1:				setarray( .@r$, "Disguise as all monsters.", "Disguise as MVPs only." );				mes( .@n$ );				mes( "Choose a disguise rule." );				next;				.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;				.Rounds = .@Rounds;				mes( .@n$ );				mes( "The number of rounds has been changed to " + .Rounds + "." );				close;			case 3:				mes( .@n$ );				mes( "Input the Item ID of the prize given each round." );				mes( "Current item: [^0000FF" + getitemname( .Prize ) + "^000000] (ID #" + .Prize + ")" );				next;				input .@Prize;				mes( .@n$ );				if ( getitemname( .@Prize ) == "" || getitemname( .@Prize ) == "null") {					mes( "That item does not exist. Please try again." );					close;				}				.Prize = .@Prize;				mes( "Input the amount to be given." );				next;				input .@amount;				mes(.@n$ );				if ( .@amount <= 0 || .@amount >= 10000 ) {					mes( "That amount is invalid. Using default ammount of 1." );					.@amount = 1;					next;					mes( .@n$ );				}								.PrizeAmt = .@amount;				mes( "The Prize has been changed successfully." );				mes( "Prize: " + .PrizeAmt + "x [^0000FF" + getitemname( .Prize ) + "^000000]" );				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 monter'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:		.EventON = 0;		.Wait = 0;		.Winner = 0;		.ResetCounter = 0;		.Rounds = 10;		.Prize = 7227;		.PrizeAmt = 5;		.Rule = 1;				setarray( .MVP, OSIRIS, BAPHOMET, DOPPELGANGER, MISTRESS, GOLDEN_BUG, ORK_HERO, DRAKE, EDDGA, MAYA, MOONLIGHT,		PHARAOH, PHREEONI, ORC_LORD, KNIGHT_OF_WINDSTORM, GARM, DARK_LORD, TURTLE_GENERAL, LORD_OF_DEATH, DRACULA, EVENT_BAPHO,		DARK_SNAKE_LORD, INCANTATION_SAMURAI, PORING_V, AMON_RA, TAO_GUNKA, RSX_0806, BACSOJIN_, B_SEYREN, B_EREMES, B_HARWORD,		B_MAGALETA, B_SHECIL, B_KATRINN, B_YGNIZEM, APOCALIPS_H, LADY_TANEE, THANATOS, DETALE, KIEL_, RANDGRIS,		GLOOMUNDERNIGHT, KTULLANUX, ATROCE, G_MAGALETA_, IFRIT, FALLINGBISHOP, BEELZEBUB_, GOPINICH, MOROCC_, KUBLIN,		S_NYDHOG, BOITATA );		if( RENEWAL )			setarray( .MVP[ getarraysize( .MVP ) ], QUEEN_SCARABA, LOST_DRAGON, LEAK, I_QUEEN_SCARABA );		.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;		OnMinute30: //Event Start		.ResetCounter++;		.EventON = 1;		.Timer = 1;		.Wait = 1;		announce( "The Disguise Event will begin in 3 minutes.", bc_all | bc_blue );		announce( "The Event is being held in Event Room.", bc_all | bc_blue );		initnpctimer;	end;	OnTimer10000:		if ( .Timer || .Change ) end;		function Disguise;		.Wait = 0;		Disguise;	end;	OnTimer30000:		if (.Timer ) end;		.Change = 0;		setnpcdisplay( "Disguise Event", 4_M_NFDEADMAN );		npctalk( "You took too long to guess what I was. Please wait 10 seconds while I disguise again." );		specialeffect( 725 );		$MonsterName$ = "";		deletepset( 1 );		initnpctimer;	end;	OnTimer60000:		if ( !.Timer ) end;		announce( "The Disguise Event will begin in 2 minutes.", bc_all | bc_blue );		announce( "The Event is being held in Event Room.", bc_all | bc_blue );	end;	OnTimer120000:		if ( !.Timer ) end;		announce( "The Disguise Event will begin 1 minute.",bc_all | bc_blue );		announce( "The Event is being held in Event Room.",bc_all | bc_blue );	end;	OnTimer180000:		function Disguise;		if ( !.Timer ) end;		announce( "The Disguise Event has begun!",bc_all | bc_blue );		announce( "The Event is being held in Event Room.",bc_all | bc_blue );		.Timer = 0;		initnpctimer;		Disguise;	end;	OnCorrect:		if (.Winner) {			dispbottom( "Someone has already won this round." );			end;		}				.Winner = 1;		.RoundCount++;				deletepset( 1 );		activatepset( 1 );		getitem (.Prize, .PrizeAmt );				announce( strcharinfo( PC_NAME )+" is correct! I was disguised as: " + $MonsterName$, bc_map | bc_blue );				if ( .RoundCount >= .Rounds ) {			setnpcdisplay( "Disguise Event", 4_M_NFDEADMAN );			.RoundCount = 0;			.Change = 0;			.EventON = 0;			setnpctimer( 0 );			stopnpctimer;			npctalk( "Thank you all for playing. That was the last round of the Disguise Event. Come play again later." );			end;		}		setnpcdisplay( "Disguise Event", 4_M_NFDEADMAN );		.Change = 0;		setnpctimer 0;	end;	function Disguise {		if ( .Rule==1 ) {			.Winner = 0;			.@monster =  rand(SCORPION, PINGUICULA);			if ( compare( ","  + .Blacklist$ + "," ,  "," + .@monster + ",")) Disguise;			if (.@monster == .LastMonster) Disguise;			.LastMonster = .@monster;			$MonsterName$ = getmonsterinfo( .@monster, 0 );		} else {			.Winner = 0;			.@monster =  rand( getarraysize( .MVP ) );			$MonsterName$ = getmonsterinfo( .MVP[ .@monster ], 0 );		}				deletepset( 1 );		defpattern( 1, "([^:]+):.s*"+$MonsterName$+".*", "OnCorrect" );		activatepset( 1 );				if ( .Rule==1 )			setnpcdisplay( "Disguise Event", .@monster );		else			setnpcdisplay( "Disguise Event", .MVP[ .@monster ] );		.Change = 1;		setnpctimer( 0 );	}} 

     

    The npc run properly. but why the error appear ?


  2. [Error]: buildin_getmonsterinfo: Wrong Monster ID: 1225[Error]: status_set_viewdata (NPC): No view data for class 1225 (name=Disguise Event)[Error]: buildin_getmonsterinfo: Wrong Monster ID: 1173[Error]: status_set_viewdata (NPC): No view data for class 1173 (name=Disguise Event)[Error]: buildin_getmonsterinfo: Wrong Monster ID: 1003[Error]: status_set_viewdata (NPC): No view data for class 1003 (name=Disguise Event)[Error]: buildin_getmonsterinfo: Wrong Monster ID: 1173[Error]: status_set_viewdata (NPC): No view data for class 1173 (name=Disguise Event)[Error]: script_rid2sd: fatal error ! player not attached![Debug]: Function: close (no parameters)[Debug]: Source (NPC): Poring Summoner at new_4-4 (148,169)[Error]: buildin_getmonsterinfo: Wrong Monster ID: 1172[Error]: status_set_viewdata (NPC): No view data for class 1172 (name=Disguise Event)[Error]: buildin_getmonsterinfo: Wrong Monster ID: 1172[Error]: status_set_viewdata (NPC): No view data for class 1172 (name=Disguise Event)[Error]: buildin_getmonsterinfo: Wrong Monster ID: 1224[Error]: status_set_viewdata (NPC): No view data for class 1224 (name=Disguise Event)[Error]: buildin_getmonsterinfo: Wrong Monster ID: 1006[Error]: status_set_viewdata (NPC): No view data for class 1006 (name=Disguise Event)[Error]: script_rid2sd: fatal error ! player not attached![Debug]: Function: close (no parameters)[Debug]: Source (NPC): Poring Summoner at new_4-4 (148,169)[Error]: buildin_getmonsterinfo: Wrong Monster ID: 1043[Error]: status_set_viewdata (NPC): No view data for class 1043 (name=Disguise Event)[Error]: buildin_getmonsterinfo: Wrong Monster ID: 1043[Error]: status_set_viewdata (NPC): No view data for class 1043 (name=Disguise Event)[Error]: buildin_getmonsterinfo: Wrong Monster ID: 1411[Error]: status_set_viewdata (NPC): No view data for class 1411 (name=Disguise Event)[Error]: buildin_getmonsterinfo: Wrong Monster ID: 1414[Error]: status_set_viewdata (NPC): No view data for class 1414 (name=Disguise Event)[Error]: buildin_getmonsterinfo: Wrong Monster ID: 1172[Error]: status_set_viewdata (NPC): No view data for class 1172 (name=Disguise Event)[Error]: buildin_getmonsterinfo: Wrong Monster ID: 1022[Error]: status_set_viewdata (NPC): No view data for class 1022 (name=Disguise Event)

    Hi all. May I know why this error happen ?

     

     


  3. @@AnnieRuru

    noitem.c:23:27: error: common/memmgr.h: No such file or directorynoitem.c: In function ‘npc_parse_unknown_mapflag_pre’:noitem.c:52: warning: implicit declaration of function ‘aMalloc’noitem.c:57: warning: implicit declaration of function ‘CREATE’noitem.c:57: error: expected expression before ‘struct’noitem.c:106: warning: implicit declaration of function ‘aFree’make[1]: *** [../../plugins/noitem.so] Error 1

     

     

    what is this error ? 


  4.  

    @@Dastgir Yeah. I know. But it possible this plugin to get the coordinate of monster ? 

    Possible, yes..

    but I dont see a use of it in mapmoblist, because mapmoblist shows output as

    Poring[1002]: 10

    (Name[iD]: Count)

    , so you want to display each and every co-ordinate?

     

    @@Dastgir this command is very useful in playing event find the mushroom.. kill the poring.. so its good if GM know the coordinate of monster.


  5. prontera,165,177,3	script	PVP Warper	106,{if (!agitcheck() || !agitcheck2()) {	if (select("Yes!","No thanks.") == 2) close;		warp "guild_vs5",0,0;		announce strcharinfo(0) + " has entered the PVP Room.",0;		announce "There are ["+getmapusers("guild_vs5")+"/30] players inside.",0;		end;	}	end;}

    Can someone edit, if player kill same person for 5 time, auto kick from pvp map and cannot enter for 5 minutes? on player click pvp warper. disbottom message, you need a rest for 5 minute.


  6. //===== Hercules Script =======================================//= Poring Summoner//===== Created By: ===========================================//= Mysterious//===== Current Version: ======================================//= 1.2//===== Link: =================================================//= Old - http://www.eathena.ws/board/index.php?showtopic=236779//===== Description: ==========================================//= Basically what this event does is summon a set of Normal//= and Special Porings. Normal Porings don't drop anything,//= Special Porings do.//=============================================================new_4-4,148,169,4	script	Poring Summoner	4W_M_03,{mes "[Poring Summoner]";if(getgroupid() < 10) {	if(.Event) mes "There is no Poring Summon Event on now.";	else {		mes "There is a Poring Summon Event on now!";		mes "Location: " + .Map$;		mes "Special Porings: " + .SpecialPorings[1];		mes "Normal Porings: " + .NormalPorings[0];	}	end;}mes "Please customize the Poring Summon Event:";Main:next;mes "[Poring Summoner]";	switch(select("Item [" + getitemname(.ItemID) + "]:Special Porings [" + .SpecialPorings + "]:Normal Porings [" + .NormalPorings + "]:Start Event:End Event")) {		case 1:			mes "Which item would you like Special Porings to drop?";			mes "Please input the item ID:";			input .ItemID;			goto Main;		case 2:			mes "How many Special Porings would you like me to summon?";			input .SpecialPorings;			goto Main;		case 3:			mes "How many Normal Porings would you like me to summon?";			input .NormalPorings;			goto Main;		case 4:			mes "Starting the event now...";OnMinute41: //Triggers at each new hour, so 1:30, 2:30, 3:30, 4:30 etc.	set $@ran, rand(1,24);	if ($@ran == 24) set .Map$,"morroc";	if ($@ran == 23) set .Map$,"geffen";	if ($@ran == 22) set .Map$,"payon";	if ($@ran == 21) set .Map$,"alberta";	if ($@ran == 20) set .Map$,"izlude";	if ($@ran == 19) set .Map$,"aldebaran";	if ($@ran == 18) set .Map$,"comodo";	if ($@ran == 17) set .Map$,"yuno";	if ($@ran == 16) set .Map$,"amatsu";	if ($@ran == 15) set .Map$,"gonryun";	if ($@ran == 14) set .Map$,"umbala";	if ($@ran == 13) set .Map$,"niflheim";	if ($@ran == 12) set .Map$,"louyang";	if ($@ran == 11) set .Map$,"jawaii";	if ($@ran == 10) set .Map$,"ayothaya";	if ($@ran == 9) set .Map$,"einbroch";	if ($@ran == 8) set .Map$,"lighthalzen";	if ($@ran == 7) set .Map$,"einbech";	if ($@ran == 6) set .Map$,"hugel";	if ($@ran == 5) set .Map$,"rachel";	if ($@ran == 4) set .Map$,"veins";	if ($@ran == 3) set .Map$,"moscovia";	if ($@ran == 2) set .Map$,"manuk";	if ($@ran == 1) set .Map$,"splendide";			set .Event,1;			monster .Map$,0,0,"Poring",1002,.SpecialPorings,"Poring Summoner::OnSpecialKill";			monster .Map$,0,0,"Poring",1002,.NormalPorings,"Poring Summoner::OnNormalKill";			set .SpecialPorings[1],.SpecialPorings;			set .NormalPorings[1],.NormalPorings;				OnInit:				set .ItemID, 7539;				set .NormalPorings,40;				set .SpecialPorings,20;				announce "Kill The Poring : The Poring Event has begin!",bc_all;			sleep 5000;			announce "Kill The Poring : Each special poring rewarded Poring Coin",bc_all;			sleep 5000;			announce "Location: " + .Map$,bc_all;			sleep 5000;			announce "Special Porings: " + .SpecialPorings,bc_all;			sleep 5000;			announce "Normal Porings: " + .NormalPorings,bc_all;			sleep 5000;			end;		case 5:			mes "Ending the event now...";			goto EndEvent;	}OnTimer1800000:	announce "Poring Summoner has ended. No one killed the Porings.",bc_all;	killmonster .Map$,"All";	set .Event,0;	stopnpctimer;	end;OnSpecialKill:	set .SpecialPorings[1],.SpecialPorings[1]-1;	announce strcharinfo(0) + " got a " + getitemname(.ItemID) + "!",bc_map;	getitem .ItemID,1;	goto PoringCount;OnNormalKill:	set .NormalPorings[1],.NormalPorings[1]-1;	goto PoringCount;PoringCount:	announce "Special Porings: " + .SpecialPorings[1] + " || Normal Porings: " + .NormalPorings[1],bc_map;	if(!.SpecialPorings[1]) goto EndEvent;	end;EndEvent:	if(.Event) announce "The Poring Summon Event is now over!",bc_all;	killmonster .Map$,"All";	set .Event,0;	set .SpecialPorings[1],0;	set .NormalPorings[1],0;	end;}

    hi all, im using this script. each time i @reloadscript, this npc will respawn poring at unknown place.

    can someone make it not spawn after @reloadscript or make it spawn on specific map that I have set on the script ?

     

    YgloQyy.png

     

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.