Jump to content

  •  

dfabsgwapings

Member Since 17 Mar 2015
Offline Last Active Jun 03 2017 11:47 AM
-----

Topics I've Started

chances on showing the item

21 May 2017 - 09:49 PM

Hi everyone,

Can anyone help me with this script?

PS: This is Goddameit Script

 

//
//
//	Author		Goddameit
//	Version		2014/05/14
//	Web		http://goo.gl/0vY9GV
//
//
prontera,150,180,4	script	Party Dungeon#fb156df	100,{
	if( .NP_GAME_STATUS )
	{
		mes "Sorry, someone is playing.";
		close;
	}
	mes "Hi, do you want to join this game?";
	if( select("No","Yes") == 1 )
		close;
	next;
	if( getcharid(1) == 0 )
	{
		mes "You need to join or create a party.";
		close;
	}
	if( getcharid(0) != getpartyleader(getcharid(1),2) )
	{
		mes "You're not party leader";
		close;
	}
	if( countitem(.SP_PLAYER_ITEM) == 0 )
	{
		mes "You don't have any "+getitemname(.SP_PLAYER_ITEM);
		close;
	}
	getpartymember getcharid(1),2;
	getpartymember getcharid(1),1;
	if( $@partymembercount < .SP_PLAYER_NUM )
	{
		mes "You need at least "+.SP_PLAYER_NUM+" player";
		deletearray $@partymembercid[0],$@partymembercount;
		deletearray $@partymemberaid[0],$@partymembercount;
		$@partymembercount = 0;
		close;
	}
	.@amount = 0;
	for( .@i = 0; .@i<$@partymembercount; .@i++ )
	{
		if( !isloggedin($@partymemberaid[.@i],$@partymembercid[.@i]) )
		{
			$@partymemberaid[.@i] = 0;
			$@partymembercid[.@i] = 0;
		}else
			.@amount++;
	}
	if( .@amount < .SP_PLAYER_NUM )
	{
		mes "You need at least "+.SP_PLAYER_NUM+" player";
		deletearray $@partymembercid[0],$@partymembercount;
		deletearray $@partymemberaid[0],$@partymembercount;
		$@partymembercount = 0;
		close;
	}
	if( .NP_GAME_STATUS )
	{
		mes "Sorry, someone is playing.";
		close;
	}
	.@amount = 0;
	delitem .SP_PLAYER_ITEM,1;
	.NP_GAME_LPID = getcharid(1);
	.NP_GAME_LAID = getcharid(3);
	.NP_GAME_LCID = getcharid(0);
	.NP_GAME_STATUS = 1;
	.NP_GAME_TICK = 600;
	deletearray .p_cid[0],.p_num;
	deletearray .p_aid[0],.p_num;
	.p_num = $@partymembercount;
	copyarray .p_cid[0],$@partymembercid[0],.p_num;
	copyarray .p_aid[0],$@partymemberaid[0],.p_num;
	deletearray $@partymembercid[0],$@partymembercount;
	$@partymembercount = 0;
	disablenpc "Treasure Chest#ukdfkbp";
	Initnpctimer;
	mes "Done";
	warpparty "guild_vs2",55,55,getcharid(1);
	close;
	end;
OnTimer1000:
	if( !mobcount("guild_vs2",strnpcinfo(0)+"::OnKill") && .NP_GAME_STATUS == 1 )
	{
		sleep2 5000;
		monster "guild_vs2",50,50,"--ja--",1002,1,strnpcinfo(0)+"::OnKill";
	}
	if( .NP_GAME_TICK > 0 )
	{
		.NP_GAME_TICK--;
		.@bool = 0;
		if( !isloggedin(.NP_GAME_LAID,.NP_GAME_LCID) )
			.@bool = 1;
		if( .@bool == 0 )
		{
			getmapxy(.@map$, .@x, .@y, 0, rid2name(.NP_GAME_LAID));
			if( .@map$ != "guild_vs2" )
				.@bool = 1;
		}
		if( .@bool == 1 )
		{
			.NP_GAME_STATUS = -1;
			MapAnnounce "guild_vs2","[System]: You're team leader is gone!!",0;
			sleep2 2000;
			mapwarp "guild_vs2","prontera",150,180;
			.NP_GAME_STATUS = 0;
		}else
			Initnpctimer;
	}
	else
	{
		.NP_GAME_STATUS = -1;
		MapAnnounce "guild_vs2","[System]: Time Out!!",0;
		sleep2 2000;
		mapwarp "guild_vs2","prontera",150,180;
		.NP_GAME_STATUS = 0;
		donpcevent "Treasure Chest#ukdfkbp::OnCleanVar";
		disablenpc "Treasure Chest#ukdfkbp";
	}
	end;
OnKill:
	detachrid;
	if( .NP_GAME_STATUS == 1 )
	{
		.NP_GAME_STATUS = 2;
		MapAnnounce "guild_vs2","[System]: You win!!",0;
		killmonsterall "guild_vs2";
		sleep2 2000;
		enablenpc "Treasure Chest#ukdfkbp";
		donpcevent "Treasure Chest#ukdfkbp::OnCleanVar";
		.NP_GAME_TICK = 120;
		$@NP_GAME_LPID = .NP_GAME_LPID;
		.@j = 0;
		for( .@i = 0; .@i<.p_num; .@i++ )
		{
			if( !isloggedin(.p_aid[.@i],.p_cid[.@i]) )
				continue;
			getmapxy(.@map$, .@x, .@y, 0, rid2name(.p_aid[.@j]));
			if( .@map$ != "guild_vs2" )
				continue;
			$@p_aid[.@j] = .p_aid[.@i];
			$@p_name$[.@j] = rid2name(.p_aid[.@i]);
			.@j++;
		}
		$@p_num = .@j;
	}
	end;
OnInit:
	.SP_PLAYER_NUM = 2;
	.SP_PLAYER_ITEM = 501;
	disablenpc "Treasure Chest#ukdfkbp";
	mapwarp "guild_vs2","prontera",150,180;
	end;
OnCleanVar:
	donpcevent "Treasure Chest#ukdfkbp::OnCleanVar";
	disablenpc "Treasure Chest#ukdfkbp";
	deletearray .p_aid[0], .p_num;
	deletearray .p_cid[0], .p_num;
	.p_num = 0;
	.NP_GAME_LPID = 0;
	.NP_GAME_LAID = 0;
	.NP_GAME_LCID = 0;
	.NP_GAME_TICK = 0;
	end;
}
guild_vs2,50,50,0	script	Treasure Chest#ukdfkbp	1324,{
	function	__st	;
	if( getcharid(0) != getpartyleader($@NP_GAME_LPID,2) )
		end;
	.@item = 5;
	setarray .@item1max[0],607,10;
	setarray .@item2max[0],501,10;
	setarray .@item3max[0],502,10;
	setarray .@item4max[0],503,10;
	setarray .@item5max[0],504,10;
	while( __st() == 2 )
	{
		mes " ";
		next;
		mes "------Less------";
		for( .@i = 1; .@i<=.@item; .@i++ )
			mes ""+getitemname(getd(".@item"+.@i+"max[0]"))+" X "+(getd(".@item"+.@i+"max[1]")-.@useitem[.@i])+"";
		if( (.@co = prompt(implode($@p_name$,":")+":[Send]")) == 255 )
		{
			mes " ";
			next;
			close;
		}
		if( .@co > $@p_num )
		{
			close2;
			detachrid;
			for( .@j = 0; .@j<$@p_num; .@j++ )
			{
				for( .@i = 1; .@i<=.@item; .@i++ )
				{
					getitem getd(".@item"+.@i+"max[0]"),getd(".@player"+.@j+"item["+.@i+"]"),$@p_aid[.@j];
					sleep2 1;
				}
			}
			mapwarp "guild_vs2","prontera",150,180;
			donpcevent "Party Dungeon#fb156df::OnCleanVar";
			end;
		}
		mes " ";
		next;
		.@co -= 1;
		if( .@co < 0 )
			break;
		deletearray .@select$[0],.@item;
		next;
		mes "--- "+$@p_name$[.@co]+" ---";
		for( .@i = 1; .@i<=.@item; .@i++ )
		{
			.@select$[.@i-1] = ""+getitemname(getd(".@item"+.@i+"max[0]"))+" X "+(getd(".@player"+.@co+"item["+.@i+"]"))+"";
			mes ""+.@select$[.@i-1];
		}
		if( (.@ct = prompt(implode(.@select$,":"))) == 255 )
			continue;
		mes " ";
		next;
		mes "Adujust "+$@p_name$[.@co]+"";
		mes ""+.@select$[.@ct-1]+" to...";
		input .@amount;
		if( .@amount < 0 )
			.@amount = 0;
		if( (.@useitem[.@ct]-getd(".@player"+.@co+"item["+.@ct+"]")+.@amount) > getd(".@item"+.@ct+"max[1]") )
			.@amount = getd(".@item"+.@ct+"max[1]")-.@useitem[.@ct];
		setd ".@player"+.@co+"item["+.@ct+"]", .@amount;
		deletearray .@useitem[0], .@item;
		for( .@i = 1; .@i<=.@item; .@i++ )
			for( .@j = 0; .@j<$@p_num; .@j++ )
				set .@useitem[.@i], .@useitem[.@i] + getd(".@player"+.@j+"item["+.@i+"]");
	}
	mes " ";
	next;
	close;
	end;
OnCleanVar:
	deletearray $@p_aid[0], $@p_num;
	deletearray $@p_name$[0], $@p_num;
	$@p_num = 0;
	$@NP_GAME_LPID = 0;
	end;
	function	__st	{
		return getvariableofnpc(.NP_GAME_STATUS,"Party Dungeon#fb156df");
	}
}

please help on changing the appearance of the items. because in this script the item reward is already fixed meaning whatever is in there those are the only items the player will get. How can I change it to "the item will appear by chances or percentage?

 

example in this part

setarray .@item1max[0],607,10;	//100% chance to show
setarray .@item2max[0],501,10;	//75% chance to show
setarray .@item3max[0],502,10;	//50% chance to show
setarray .@item4max[0],503,10;	//25% chance to show
setarray .@item5max[0],504,10;	//1% chance to show

those items will only show by chances or percentage to the treasure pool.

 

I hope someone can help me with this.


Random area appearance of an NPC

15 May 2017 - 01:27 AM

H there everyone,

 

How can I make the appearance of an NPC randomly to a specific map?

 

This for the hide and seek event actually.

 

I tried to use this one but it seems not working

 

prontera,0,0,0	script	Hide and Seek	123,{

"script area here"

}

The NPC is not showing. even if I tried to put it on a small map. No NPC appeared.

 

Need help guys. Thanks.


connecting 2 server in 1 flux

13 May 2017 - 10:16 AM

Hi guys

 

how can I connect 2 different active server in 1 flux only? I tried to edit the config of flux but its not working.

 

what I need is players can register in flux and it will automatically saved on both database of 2 server. and they will be able to login to those server using the same login information they created.


R> OnSell NPC script

02 May 2017 - 05:48 AM

hello does anyone knows how to do this?

 

if the player click an NPC a Sell window will appear. Player can only sell one equipment at a time (only equipment item can be sell). If a player put 1x hat (ID: 2220) and click on sell, a progress bar will appear for 10 seconds and after that the player will get 1 or 2 Gold Coin (ID: 671). However if the player put 1x Cap (ID: 2226) and click on sell, a progress bar will appear for 10 seconds and after that the player will get 1 or 2 Bronze Coin (ID: 673).

 

If the player put an item other than the item mentioned above and the player click the sell button. The trade will be cancelled automatically.

 

I hope someone can help me on doing this.


MVP Card Announcer

01 May 2017 - 01:33 AM

Hi there to all scripters,

How can I make an MVP card to be announced when the player got an MVP card from an MVP and automatically get the card.

example:

If a player was able to kill the Baphomet and it drop its card, the card will automatically be taken by the player who killed the MVP. and it will be broadcasted to the server.

[Player 1] got Baphomet Card from Baphomet