I'm using Emistry Vendor Control Script.. The script working magnificently.. So awesome and neat.. I really love the feature.. But my server have 2 side of vending location.. Side West and East.. So, I tried making 2 different npc because of different vending location.. And I succeed.. No problem..
But East vending location, the signboard keep appear and dissappear and keep using and playing sound like hiding effect.. I checked the script there is no effect.. But if I disable West script, all this signboard on East area working normally.. If enable again both script.. The east side signboard will playing the effect although no effect on script. .Tried to figure it out almost 1 hour and tried so many ways.. But still same.. So I ask here and maybe someone can help pointing whats wrong..
And my custom script rathena reading West Side before East Side..
Effect that I said like this :
WEST SIDE SCRIPT :
milenia,118,179,5 script West Market Officer 533,{
for( set .@i,1; .@i <= .count; set .@i,.@i + 1 ){
getmapxy( .@map$,.@x,.@y,1,"#vend_slot"+.@i );
if( !getareausers( .map$,.@x,.@y,.@x,.@y ) && .@x > 1 && .@y > 1 ){
set .@available,.@available + 1;
set .@menu$,.@menu$ + "Slot - "+.@i+":";
}else{
set .@menu$,.@menu$ + ":";
}
}
if( !.@available ){
mes "Dont have any available slot.";
}else if( !getskilllv("MC_VENDING") ){
mes "You dont have ^0055FFVending Skill^000000.";
}else{
mes "Available Slot : "+.@available;
mes "Please select a slot to vending.";
set .@i,select( .@menu$ );
getmapxy( .@map$,.@x,.@y,1,"#vend_slot"+.@i );
if( .@x == 1 || .@y == 1 ){
mes "This NPC at invalid location...";
}else{
warp .@map$,.@x,.@y;
hideonnpc "#vend_slot"+.@i;
}
}
close;
OnInit:
sleep 1000;
// Map for vending
set .map$,"milenia";
setcell .map$,0,0,284,365,cell_novending,1;
// x and y horizone ..
setarray .x_line,95,91,87,83,79,75,71,67,63,59,55,51,47;
setarray .y_line,174,178,182,186;
set .x_line_size,getarraysize( .x_line );
set .y_line_size,getarraysize( .y_line );
set .count,1;
for( set .@x,0; .@x < .x_line_size; set .@x,.@x + 1 )
for( set .@y,0; .@y < .y_line_size; set .@y,.@y + 1 )
if( checkcell( .map$,.x_line[.@x],.y_line[.@y],cell_chkpass ) ){
movenpc "#vend_slot"+.count,.x_line[.@x],.y_line[.@y];
setcell .map$,.x_line[.@x],.y_line[.@y],.x_line[.@x],.y_line[.@y],cell_novending,0;
set .count,.count + 1;
}
npctalk "Vending Spot : "+.count;
donpcevent "::OnSetup";
end;
}
- script vend_slot -1,{
getmapxy( .@map$,.@x,.@y,1 );
if( !getskilllv("MC_VENDING") ){
mes "You dont have ^0055FFVending Skill^000000.";
}else if( getareausers( .@map$,.@x,.@y,.@x,.@y ) ){
mes "Someone already selected this spot.";
}else{
mes "Spot : ^777777Available^000000";
mes "^0055FF[ Vending Area Rules ]^000000";
mes "^FF0000 ~ Use proper Shop Name.^000000";
mes "^FF0000 ~ Never sell Junk/Gifts.^000000";
mes " ";
mes "^777777Player will failed to follow these will be punished.^000000";
if( select( "Select this Spot","Cancel" ) == 1 ){
warp .@map$,.@x,.@y;
hideonnpc strnpcinfo(0);
}
}
close;
OnSetup:
getmapxy( .@map$,.@x,.@y,1 );
set .@npcname$,strnpcinfo(0);
while( .@map$ != "" ){
if( getareausers( .@map$,.@x,.@y,.@x,.@y ) ){
hideonnpc .@npcname$;
}else{
hideoffnpc .@npcname$;
// specialeffect 313;
}
sleep 5000;
}
end;
}
// Add more if needed.
milenia,1,1,4 duplicate(vend_slot) #vend_slot1 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot2 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot3 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot4 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot5 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot6 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot7 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot8 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot9 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot10 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot11 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot12 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot13 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot14 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot15 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot16 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot17 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot18 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot19 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot20 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot21 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot22 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot23 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot24 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot25 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot26 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot27 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot28 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot29 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot30 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot31 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot32 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot33 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot34 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot35 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot36 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot37 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot38 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot39 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot40 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot41 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot42 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot43 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot44 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot45 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot46 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot47 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot48 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot49 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot50 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot51 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot52 858
EAST SIDE SCRIPT :
milenia,121,179,11 script East Market Officer 529,{
for( set .@i,1; .@i <= .count; set .@i,.@i + 1 ){
getmapxy( .@map$,.@x,.@y,1,"#vend_slot"+.@i );
if( !getareausers( .map$,.@x,.@y,.@x,.@y ) && .@x > 1 && .@y > 1 ){
set .@available,.@available + 1;
set .@menu$,.@menu$ + "Slot - "+.@i+":";
}else{
set .@menu$,.@menu$ + ":";
}
}
if( !.@available ){
mes "Dont have any available slot.";
}else if( !getskilllv("MC_VENDING") ){
mes "You dont have ^0055FFVending Skill^000000.";
}else{
mes "Available Slot : "+.@available;
mes "Please select a slot to vending.";
set .@i,select( .@menu$ );
getmapxy( .@map$,.@x,.@y,1,"#vend_slot"+.@i );
if( .@x == 1 || .@y == 1 ){
mes "This NPC at invalid location...";
}else{
warp .@map$,.@x,.@y;
hideonnpc "#vend_slot"+.@i;
}
}
close;
OnInit:
sleep 1000;
// Map for vending
set .map$,"milenia";
setcell .map$,0,0,284,365,cell_novending,1;
// x and y horizone ..
setarray .x_line,144,148,152,156,160,164,168,172,176,180,184,188,192;
setarray .y_line,174,178,182,186;
set .x_line_size,getarraysize( .x_line );
set .y_line_size,getarraysize( .y_line );
set .count,1;
for( set .@x,0; .@x < .x_line_size; set .@x,.@x + 1 )
for( set .@y,0; .@y < .y_line_size; set .@y,.@y + 1 )
if( checkcell( .map$,.x_line[.@x],.y_line[.@y],cell_chkpass ) ){
movenpc "#vend_slot"+.count,.x_line[.@x],.y_line[.@y];
setcell .map$,.x_line[.@x],.y_line[.@y],.x_line[.@x],.y_line[.@y],cell_novending,0;
set .count,.count + 1;
}
npctalk "Vending Spot : "+.count;
donpcevent "::OnSetup";
end;
}
- script vend_slot -1,{
getmapxy( .@map$,.@x,.@y,1 );
if( !getskilllv("MC_VENDING") ){
mes "You dont have ^0055FFVending Skill^000000.";
}else if( getareausers( .@map$,.@x,.@y,.@x,.@y ) ){
mes "Someone already selected this spot.";
}else{
mes "Spot : ^777777Available^000000";
mes "^0055FF[ Vending Area Rules ]^000000";
mes "^FF0000 ~ Use proper Shop Name.^000000";
mes "^FF0000 ~ Never sell Junk/Gifts.^000000";
mes " ";
mes "^777777Player will failed to follow these will be punished.^000000";
if( select( "Select this Spot","Cancel" ) == 1 ){
warp .@map$,.@x,.@y;
hideonnpc strnpcinfo(0);
}
}
close;
OnSetup:
getmapxy( .@map$,.@x,.@y,1 );
set .@npcname$,strnpcinfo(0);
while( .@map$ != "" ){
if( getareausers( .@map$,.@x,.@y,.@x,.@y ) ){
hideonnpc .@npcname$;
}else{
hideoffnpc .@npcname$;
// specialeffect 313;
}
sleep 5000;
}
end;
}
// Add more if needed.
milenia,1,1,4 duplicate(vend_slot) #vend_slot01 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot02 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot03 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot04 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot05 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot06 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot07 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot08 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot09 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot010 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot011 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot012 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot013 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot014 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot015 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot016 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot017 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot018 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot019 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot020 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot021 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot022 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot023 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot024 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot025 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot026 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot027 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot028 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot029 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot030 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot031 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot032 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot033 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot034 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot035 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot036 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot037 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot038 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot039 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot040 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot041 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot042 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot043 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot044 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot045 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot046 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot047 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot048 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot049 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot050 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot051 858
milenia,1,1,4 duplicate(vend_slot) #vend_slot052 858
Question
rakuzas
Hi,

I'm using Emistry Vendor Control Script.. The script working magnificently.. So awesome and neat.. I really love the feature.. But my server have 2 side of vending location.. Side West and East.. So, I tried making 2 different npc because of different vending location.. And I succeed.. No problem..
But East vending location, the signboard keep appear and dissappear and keep using and playing sound like hiding effect.. I checked the script there is no effect.. But if I disable West script, all this signboard on East area working normally.. If enable again both script.. The east side signboard will playing the effect although no effect on script. .Tried to figure it out almost 1 hour and tried so many ways.. But still same.. So I ask here and maybe someone can help pointing whats wrong..
And my custom script rathena reading West Side before East Side..
Effect that I said like this :
WEST SIDE SCRIPT :
EAST SIDE SCRIPT :
Edited by rakuzasLink to comment
Share on other sites
2 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.