Jump to content
  • 0

Costume Clown Npc Script


Kudo

Question


  • Group:  Members
  • Topic Count:  54
  • Topics Per Day:  0.01
  • Content Count:  135
  • Reputation:   0
  • Joined:  08/18/12
  • Last Seen:  

// -------------------------------------------------------------------------------
// 	Script Name : Headgear to Costume converter >> Costume to Headgear converter
// -------------------------------------------------------------------------------
// Description :
// - Allows a user to convert the equipped headgear (on Top, Mid or Low) into a
//   costume item. It will remove any card and refine of the Item.
// - Allows a user to restore the equipped costume headgear (on Top, Mid or Low)
//   into its original form. It will not return any card or refine of the item.
// -------------------------------------------------------------------------------
function	script	costume	{
	.@npc_name$ = getarg(0);
	disable_items;
	mes "["+ .@npc_name$ +"]";
	mes "Here you can convert your headgears into a Costume Headgear or restore to its Original form.";
	next;

	switch(select("I want to convert.:I want to restore.:No thanks.")) {
	case 1:
		setarray .@indices[1], EQI_HEAD_TOP, EQI_HEAD_MID, EQI_HEAD_LOW;
		for (.@i = 1; .@i<=3; ++.@i) {
			if (getequipisequiped(.@indices[.@i])) {
				.@menu$ = .@menu$ + F_getpositionname(.@indices[.@i]) + "-[" + getequipname(.@indices[.@i]) + "]";
				.@equipped = 1;
			}
			.@menu$ = .@menu$ + ":";
		}

		if (.@equipped == 0) {
			mes "["+ .@npc_name$ +"]";
			mes "You need to wear headgears that I can costume...";
			close;
		}

		mes "["+ .@npc_name$ +"]";
		mes "Please select what to convert.";
		mes "Remember, cards and refine will be removed.";
		next;

		.@part = .@indices[ select(.@menu$) ];
		if (!getequipisequiped(.@part)) {
			mes "["+ .@npc_name$ +"]";
			mes "You're not wearing anything there...";
			close;
		}

		if (getequiprefinerycnt(.@part)) {
			mes "["+ .@npc_name$ +"]";
			mes "Sorry, I don't convert refined items!";
			close;
		}

		mes "["+ .@npc_name$ +"]";
		mes "You want to Costume your " + getitemname(getequipid(.@part)) + "?";
		next;

		if (select("Yes, proceed:No, sorry.") == 2) {
			mes "["+ .@npc_name$ + "]";
			mes "Need some time to think about it, huh?";
			mes "Alright, I can understand.";
			close;
		}

		getinventorylist;
		for (set .@i,0; .@i<@inventorylist_count; set .@i,.@i+1)
			if (@inventorylist_expire[.@i] != 0 && @inventorylist_equip[.@i] != 0) { // If rental or bound don't convert
				mes @header$;
				mes "Sorry, I don't convert a rental or bound headgear!";
				emotion ET_SCRATCH;
				close2;
				end;
			}

		costume .@part; // Convert the Headgear

		mes "["+ .@npc_name$ +"]";
		mes "Done, enjoy your costume headgear.";
		close;
	case 2:
		setarray .@indices[1], EQI_COSTUME_HEAD_TOP, EQI_COSTUME_HEAD_MID, EQI_COSTUME_HEAD_LOW;
		for (.@i = 1; .@i<=3; ++.@i) {
			if (getequipisequiped(.@indices[.@i])) {
				.@menu$ = .@menu$ + F_getpositionname(.@indices$[.@i]) + "-[" + getequipname(.@indices[.@i]) + "]";
				.@equipped = 1;
			}
			.@menu$ = .@menu$ + ":";
		}

		if (.@equipped == 0) {
			mes "["+ .@npc_name$ +"]";
			mes "You need to wear costumed headgears that I can restore...";
			close;
		}

		mes "["+ .@npc_name$ +"]";
		mes "Please select what to restore.";
		mes "Remember, I will only restore it back without refine and cards.";
		next;

		.@part = .@indices[ select(.@menu$) ];
		if (!getequipisequiped(.@part)) {
			mes "["+ .@npc_name$ +"]";
			mes "You're not wearing anything there...";
			close;
		}

		if (isequippedcnt(getequipid(.@part)) > 1) {
			mes "["+ .@npc_name$ +"]";
			mes "You're wearing too many of the same headgear!";
			mes "How am I supposed to know which one to restore?";
			mes "See me when you have one equipped.";
			close;
		}

		if (countitem(getequipid(.@part)) > 1) {
			mes "["+ .@npc_name$ +"]";
			mes "You have another " + getitemname(getequipid(.@part)) + " with you.";
			mes "Put it away before restoring.";
			close;
		}

		mes "[" + .@npc_name$ + "]";
		mes "You want to restore your " + getitemname(getequipid(.@part)) + "?";
		next;

		if (select("Yes, proceed:No, sorry.") == 2) {
			mes "["+ .@npc_name$ +"]";
			mes "Need some time to think about it, huh?";
			mes "Alright, I can understand.";
			close;
		}

		// Restore headgear by recreating
		a = getequipid(.@part);
		delitem a,1;
		getitem a,1;

		mes "["+ .@npc_name$ +"]";
		mes "Done, enjoy your restored headgear.";
		close;
	case 3:
		mes "["+ .@npc_name$ +"]";
		mes "Very well. Return at once if you seek my services.";
		close;
	}
}

// ---------------------------------------------------------------------------
// Add more lines to put your npc on different cities (adjust name if desired)
// ---------------------------------------------------------------------------
arlandria,165,175,4	script	Costume Clown#1	715,{ callfunc "costume","Costume Clown",0; end; 

	OnInit:	
		PUBTITLE:
			showscript "Costume Converter";
			sleep 3000; 
		goto PUBTITLE;
	end;


}

this is my costume clown script. it works fine but i have 1 problem when converting
Item effect combo remains when converted into costume

 

For example:

Phoenix Wings + Fist of Fury combo = splash damage

If you converted the phoenix wings into costume the splash damage effect remains

can someone help me with this script. that if i change the wings into costume the item effect combo will disappear since i convert it as costume.

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

  • Group:  Members
  • Topic Count:  54
  • Topics Per Day:  0.01
  • Content Count:  135
  • Reputation:   0
  • Joined:  08/18/12
  • Last Seen:  

bump. can someone knows how to fix my problem?

Link to comment
Share on other sites

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.

×
×
  • Create New...