Jump to content
  • 0

Having error in this Script. +10 Refiner


JassMax

Question


  • Group:  Members
  • Topic Count:  65
  • Topics Per Day:  0.02
  • Content Count:  235
  • Reputation:   0
  • Joined:  05/03/13
  • Last Seen:  

Getting an Error in CMD.
I try to understand the problem but i couldn't im not really good in scripting i need help

Here is my Script
 

new_zone02,79,101,6	script	Lotto4 Refiner	414,{
mes "[Lotto4 Refiner]";
if(countitem(7364)>=1) goto L_Refine;
mes "You don't have any Lotto4s with you, come back again when you have them.";
close;

L_Refine:
mes "Please select which item to refine:";
next;
menu getequipname(1),PART1,getequipname(2),PART2,getequipname(3),PART3,getequipname(4),PART4,getequipname(5),PART5,
     getequipname(6),PART6,getequipname(7),PART7,getequipname(8),PART8,getequipname(9),PART9,getequipname(10),PART10;

		//Head Gear
	PART1:
		set @part,1;
		if (getequipisequiped(1)) goto CHECK1;
		mes "[Lotto4 Refiner]";
		mes "Do you want me to refine your dumb brain?";
		emotion 6;
		goto M_Menu;
	//Armor
	PART2:
		set @part,2;
		if (getequipisequiped(2)) goto CHECK1;
		mes "[Lotto4 Refiner]";
		mes "Do you want me to melt your body with blazing heat...?";
		emotion 6;
		goto M_Menu;
	//Left Hand
	PART3:
		set @part,3;
		if (getequipisequiped(3)) goto CHECK1;
		mes "[Lotto4 Refiner]";
		mes "I can't make your left hand into an ultimate weapon...";
		emotion 4;
		goto M_Menu;
	//Right Hand
	PART4:
		set @part,4;
		if (getequipisequiped(4)) goto CHECK1;
		mes "[Lotto4 Refiner]";
		mes "I can't make your right hand into an ultimate weapon...";
		emotion 4;
		goto M_Menu;
	//Garment
	PART5:
		set @part,5;
		if (getequipisequiped(5)) goto CHECK1;
		mes "[Lotto4 Refiner]";
		mes "Look here... you don't have any Garments on...";
		goto M_Menu;
	//Foot Gear
	PART6:
		set @part,6;
		if (getequipisequiped(6)) goto CHECK1;
		mes "[Lotto4 Refiner]";
		mes "Ack!! Those are some stinky feet. I definitely can't refine those... uck!!";
		emotion 16;
		goto M_Menu;
	//Accessory1
	PART7:
		set @part,7;
		if (getequipisequiped(7)) goto CHECK1;
		mes "[Lotto4 Refiner]";
		mes "What do you mean by Accessory? Which One?";
		emotion 20;
		goto M_Menu;
	//Accessory2
	PART8:
		set @part,8;
		if (getequipisequiped(8)) goto CHECK1;
		mes "[Lotto4 Refiner]";
		mes "What do you mean by Accessory? Which One?";
		emotion 20;
		goto M_Menu;
	PART9:
		set @part,9;
		if (getequipisequiped(9)) goto CHECK1;
		mes "[Lotto4 Refiner]";
		mes "What do you want from me? There's nothing equipped there...";
		emotion 20;
		goto M_Menu;
	PART10:
		set @part,10;
		if (getequipisequiped(10)) goto CHECK1;
		mes "[Lotto4 Refiner]";
		mes "What do you want from me? There's nothing equipped there...";
		emotion 20;
		goto M_Menu;

//Check if the item is refinable...
CHECK1:
	if(getequipisenableref(@part)) goto CHECK2;
	mes "[Lotto4 Refiner]";
	mes "I can't work on this item...";
	close;

//Check if the item is identified... (Don't know why this is in here... but kept it anyway)
CHECK2:
	if(getequipisidentify(@part)) goto CHECK3;
	mes "[Lotto4 Refiner]";
	mes "You must appraise this item first.";
	close;

//Check to see if the items is already +10
CHECK3:
	if(getequiprefinerycnt(@part) < 10) goto REFINE;
	mes "[Lotto4 Refiner]";
	mes "This weapon is already at its maximum level and can no longer be refined.";
	close;
	
REFINE:
delitem 7364,1;
successrefitem @part;
next;
mes "Your item has been refined.";
close;
}

and this is Error in CMD

Someone please correct this script
I'm using rAthena Version 


 

post-17166-0-70890400-1397913157_thumb.jpg

Link to comment
Share on other sites

9 answers to this question

Recommended Posts


  • Group:  Members
  • Topic Count:  5
  • Topics Per Day:  0.00
  • Content Count:  341
  • Reputation:   43
  • Joined:  01/10/12
  • Last Seen:  

Missing '{'

while( getequiprefinerycnt(@part) < 10 && countitem( 512 ) ) {
    successrefitem @part;
    delitem 512,1;
} 
  • Upvote 1
Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  93
  • Topics Per Day:  0.02
  • Content Count:  10013
  • Reputation:   2346
  • Joined:  10/28/11
  • Last Seen:  

	if(getequipisidentify(@part)) goto CHECK3;
	mes "[Lotto4 Refiner]";
	mes "You must appraise this item first.";
	close; 

remove

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  65
  • Topics Per Day:  0.02
  • Content Count:  235
  • Reputation:   0
  • Joined:  05/03/13
  • Last Seen:  

	if(getequipisidentify(@part)) goto CHECK3;
	mes "[Lotto4 Refiner]";
	mes "You must appraise this item first.";
	close; 

remove

 

Hello thank you for replying

I want to make

if i have 10 lotto balls it should refine direct +10

but this is refining per item gives 1 time only.. 

Bump~

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  38
  • Topics Per Day:  0.01
  • Content Count:  949
  • Reputation:   174
  • Joined:  06/12/12
  • Last Seen:  

Find

successrefitem @part;

Replace

while(getequiprefinerycnt(@part) < 10)
	successrefitem @part;
Edited by sandbox
Based on Emistry.
  • Upvote 1
Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  93
  • Topics Per Day:  0.02
  • Content Count:  10013
  • Reputation:   2346
  • Joined:  10/28/11
  • Last Seen:  

it should be

while( getequiprefinerycnt(@part) < 10 )
    successrefitem @part;

@sandbox

your method...if using in latest rathena..should be no problem..

but..

if using in old rathena ....problem occur...where players will get some refined item that exceed 10....

ex. +127 Equipment ...

  • Upvote 1
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  65
  • Topics Per Day:  0.02
  • Content Count:  235
  • Reputation:   0
  • Joined:  05/03/13
  • Last Seen:  

 

Find

successrefitem @part;

Replace

while(getequiprefinerycnt(@part) < 10)
	successrefitem @part;

 

 

Hii

but item get refine +10 in 1 lotto ball 04

it should be required 10 > lotto balls 04 to get +10 refine.

and if player has 5 lotto balls in their inventory it should refine +5 

Edited by JassMax
Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  93
  • Topics Per Day:  0.02
  • Content Count:  10013
  • Reputation:   2346
  • Joined:  10/28/11
  • Last Seen:  


while( getequiprefinerycnt(@part) < 10 && countitem( 512 ) )

successrefitem @part;

delitem 512,1;

}

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  65
  • Topics Per Day:  0.02
  • Content Count:  235
  • Reputation:   0
  • Joined:  05/03/13
  • Last Seen:  

while( getequiprefinerycnt(@part) < 10 && countitem( 512 ) )
    successrefitem @part;
    delitem 512,1;
}

Its still +10 refine in 1 lotto ball

Bump~

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  65
  • Topics Per Day:  0.02
  • Content Count:  235
  • Reputation:   0
  • Joined:  05/03/13
  • Last Seen:  

 

Missing '{'

while( getequiprefinerycnt(@part) < 10 && countitem( 512 ) ) {
    successrefitem @part;
    delitem 512,1;
} 

Hello thanks a lot met..its working now

can u add this in this script as well

 

new_zone02,78,101,6	script	Cat De Smith	559,{
mes "[Refine Master]";
mes "Greetings!";
mes "I can refine and de-refine an item with ^006400Lotto Ball^000000.";
mes "You don't have to worry! There's no chance of breaking your item.";
mes "Per refine an item i will charge";
mes "^0000FF1^000000 x ^9F81F7Lotto Ball No.4^000000 ";
mes "for de-refine an item i will charge ^0000FF1^000000 x ^FE2E2ELotto Ball No.3^000000 ";
next;
mes "[Refine Master]";
mes "So tell me what may i do for you?";
next;
switch (select("Refine","De-Refine"))
	{
		case 1:
			mes "[Refine Master]";
			mes "Which equipment you want to ?";
			mes "refine ?";
			callfunc( "RefineFunc",7364 ,1,831,0,10,1,0,100 );
			end;
 
		case 2:
			setarray .@ItemID[0],7363,1;
			mes "[Refine Master]";
			mes "Which equipment you want to de-refine?";
			mes "Required ^FF00001 x Lotto ball 03^000000";
			if( countitem( .@ItemID[0] ) >= .@ItemID[1] ){
					for( set .@i,1; .@i <= 10; set .@i,.@i + 1 )
					set .@Menu$,.@Menu$ + (( getequipid(.@i) > 0 && getequiprefinerycnt(.@i) )? getitemname(getequipid(.@i)):"" )+":";
					set .@i,select(.@Menu$);
					setarray .@GetData[0],getequipid(.@i),getequipcardid(.@i,0),getequipcardid(.@i,1),getequipcardid(.@i,2),getequipcardid(.@i,3);
					failedrefitem .@i;
					delitem .@ItemID[0],.@ItemID[1];
					getitem2 .@GetData[0],1,1,0,0,.@GetData[1],.@GetData[2],.@GetData[3],.@GetData[4];
					equip .@GetData[0];
					mes "Done.";
					}
			end;
		}
}

this is different script which is more better but.. this also refine per ball..

i want same like this if player has 10 balls it will direct refine +10

refining depends on their balls how many they has,,, max refine is 10

can u please edit this script and allow to direct refine to max lvl

Edited by JassMax
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...