Jump to content
  • 0

Script gets stuck?


Millenium

Question


  • Group:  Members
  • Topic Count:  50
  • Topics Per Day:  0.01
  • Content Count:  131
  • Reputation:   0
  • Joined:  07/10/12
  • Last Seen:  

When I click on NPC and click any Armor/Weapons,etc It says

"This shop only accepts Poring Coin"

"You have 1 Poring coin."

Then stops me from moving or clicking?

//===== eAthena Script =======================================
//= Custom-Currency Multi-Shop
//===== By: ==================================================
//= Euphy
//===== Current Version: =====================================
//= 1.2
//===== Description: =========================================
//= Allows for better organization in a single shop call.
//= Note that there are two configuration areas.
//============================================================

// -------------------- Config 1 --------------------
// For each shop added, copy this MSHOPX dummy data.
// Write your shop names in the select() function.

-	shop	WEAPONS	1,512:1
-	shop	HEADGEARS	-1,:-1
-	shop	ARMORS	-1,:-1
-	shop	GARMENTS	-1,512:-1
-	shop	SHOES	-1,:-1
-	shop	SHIELDS	-1,:-1
-	shop	CARDS	-1,:-1
-	shop	ACCESSORY	-1,512:-1

crystilia,71,86,4	script	A Shop	984,{

set @s, select("Weapons:Headgears:Armors:Garments:Shoes:Shields:Cards:Accessory");

// --------------------------------------------------

message strcharinfo(0),"This shop only accepts "+getitemname(.Currency[@s])+".";
dispbottom "You have "+countitem(.Currency[@s])+" "+getitemname(.Currency[@s])+".";
callshop "MSHOP"+@s,1;
npcshopattach "MSHOP"+@s;
end;

OnBuyItem:
set .@i,0;
while (.@i < getarraysize(@bought_nameid)) {
	set .@j, 0;
	while (.@j < getarraysize(getd(".Shop"+@s))) {
		if(getd(".Shop"+@s+"["+.@j+"]") == @bought_nameid[.@i]) {
			set @itemcost, (getd(".Shop"+@s+"["+(.@j+1)+"]") * @bought_quantity[.@i]);
			set @totalcost, @totalcost + @itemcost;
			break; }
		set .@j, .@j+2; }
	set .@i, .@i+1; }
if (@totalcost > countitem(.Currency[@s])) dispbottom "You don't have enough "+getitemname(.Currency[@s])+".";
else {
	set .@i,0;
	while (.@i < getarraysize(@bought_nameid)) {
		getitem @bought_nameid[.@i], @bought_quantity[.@i];
		dispbottom "Purchased "+@bought_quantity[.@i]+"x "+getitemname(@bought_nameid[.@i])+".";
		set .@i, .@i+1; }
	delitem .Currency[@s], @totalcost; }
set @totalcost, 0;
deletearray @bought_nameid[0], 128;
deletearray @bought_quantity[0], 128;
end;

OnInit:

// -------------------- Config 2 --------------------
// Currency:  The ID of each shop currency,
//	in the same order as the shops.
// Shop order follows that of the select() call,
//   and is formatted "ID1,Count1,ID2,Count2,..."

setarray .Currency[1],7539,7539,7539,7539,7539,7539,7539,7539;
setarray .Weapons[0],1202,5,1229,20;
setarray .Headgears[0],19806,15;
setarray .Armors[0],2302,2,2348,30;
setarray .Garments[0],2502,2,2513,15,2523,15;
setarray .Shoes[0],2441,15;
setarray .Shields[0],2199,32768;
setarray .Cards[0],4051,3,4285,6;
setarray .Accessory[0],513,1,532,2,634,4;

// --------------------------------------------------

set .@i,1;
while (.@i <= getarraysize(.Currency)) {
	set .@j,0;
	while (.@j < getarraysize(getd(".Shop"+.@i))) {
		npcshopdelitem "MSHOP"+.@i,512;
		npcshopadditem "MSHOP"+.@i, getd(".Shop"+.@i+"["+.@j+"]"), getd(".Shop"+.@i+"["+(.@j+1)+"]");
		set .@j, .@j+2; }
	set .@i, .@i+1; }
end;
}

Edited by Millenium
Link to comment
Share on other sites

6 answers to this question

Recommended Posts


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

LOL...why are you creating so many topic just for the same script ? /swt

beside..your problem occur because you renamed all the shop npc name...

left it unchange ...

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  50
  • Topics Per Day:  0.01
  • Content Count:  131
  • Reputation:   0
  • Joined:  07/10/12
  • Last Seen:  

LOL...why are you creating so many topic just for the same script ? /swt

beside..your problem occur because you renamed all the shop npc name...

left it unchange ...

Sorry, this my last topic. ):

These all right?


       setarray .Currency[1],7539,7539,7539,7539,7539,7539,7539,7539;
       setarray .Weapons[0],1202,5,1229,20;
       setarray .Headgears[0],19806,15;
       setarray .Armors[0],2302,2,2348,30;
       setarray .Garments[0],2502,2,2513,15,2523,15;
       setarray .Shoes[0],2441,15;
       setarray .Shields[0],2199,32768;
       setarray .Cards[0],4051,3,4285,6;
       setarray .Accessory[0],513,1,532,2,634,4;

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:  

dont edit any variable name if you dont know what you are doing...

just edit the value..

the rest...leave it alone...

and alway refer to you map-server..which the map-server will alway show you the reason why the script doesnt work

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  1
  • Topics Per Day:  0.00
  • Content Count:  135
  • Reputation:   5
  • Joined:  06/25/12
  • Last Seen:  

/swt

You don't need to change those. It will work as is.

Leave this section unchanged.

- shop MSHOP1 -1,512:-1
- shop MSHOP2 -1,512:-1
- shop MSHOP3 -1,512:-1
- shop MSHOP4 -1,512:-1
- shop MSHOP5 -1,512:-1
- shop MSHOP6 -1,512:-1
- shop MSHOP7 -1,512:-1
- shop MSHOP8 -1,512:-1

This too.

setarray .Currency[1],513,513,513,513,513,513,513,513;
setarray .Shop1[0],1202,5,1229,20;
setarray .Shop2[0],5116,15;
setarray .Shop3[0],2302,2,2348,30;
setarray .Shop4[0],2502,2,2513,15,2523,15;
setarray .Shop5[0],2441,15;
setarray .Shop6[0],2199,32768;
setarray .Shop7[0],4051,3,4285,6;
setarray .Shop8[0],513,1,532,2,634,4;

Just edit the numbers and your script should work fine.

Edit this section if you want to change the labels.

set @s, select("Weapons:Headgears:Armors:Garments:Shoes:Shields:Cards:Accessory");

Edited by Eroces
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  94
  • Topics Per Day:  0.02
  • Content Count:  2192
  • Reputation:   252
  • Joined:  11/11/11
  • Last Seen:  

@Emistry, you should just merge all his same topics regarding this script.

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:  

@Mysterious

i am not a mod for script section...

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...