Hello everyone,
I'm currently using the script below and am wondering if it's possible for the Last Warp option to save through relogs?
Currently Last Warp gets erased when characters log out. I'd like it to save the Last Warp per character even if they log out.
Is this possible?
Script I'm using atm:
//--- Warpra 1.0.0 -----------------------------------------//
//----------------------------------------------------------------//
// ttt 000000000
// ttt 000 000
// ttttttttt rrrrrrrrr 000 000 nnnnnnnnn
// ttt rrr 000 000 nnn nnn
// ttt rrr 000 000 nnn nnn
// ttt rrr 000 000 nnn nnn
// ttttt rrr 000000000 nnn nnn
//----------------------------------------------------------------//
//--- Changelogs: ------------------------------------------------//
// 1.0.0 Release
//----------------------------------------------------------------//
//--- Main Script ------------------------------------------------//
prontera,147,203,4 script Warpra#1-1 708,{
function AddTown;
function AddDungeon;
function AddField;
function LastWarp;
//Activate|Deactivate menu here
set .lastwarp, 1;
set .towns, 1;
set .dungeons, 1;
set .fields, 1;
//Set warp fee here
set .townfee, 0;
set .dungeonfee, 500;
set .fieldfee, 250;
set .lastwarpfee, 250;
//Checks if maps are loaded, (prevents out of index)
if(.mapsloaded==1) goto L_warpmenu;
set .mapsloaded, 1;
//Add Towns here
AddTown("Prontera", "prontera", 155, 183);
AddTown("PvP Arena", "arenalounge", 88,50);
AddTown("Alberta", "alberta", 28, 234);
AddTown("Aldebaran", "aldebaran", 140, 131);
AddTown("Amatsu", "amatsu", 198, 84);
AddTown("Ayothaya", "ayothaya", 150, 163);
AddTown("Comodo", "comodo", 209, 143);
AddTown("Einbech (Mining Village);", "einbech", 70, 95);
AddTown("Einbroch", "einbroch", 64, 200);
AddTown("Geffen", "geffen", 119, 59);
AddTown("Gonryun", "gonryun", 160, 121);
AddTown("Hugel", "hugel", 96, 145);
AddTown("Izlude", "izlude", 128, 114);
AddTown("Jawaii", "jawaii", 213, 230);
AddTown("Lighthalzen", "lighthalzen", 158, 92);
AddTown("Louyang", "louyang", 210, 108);
AddTown("Lutie", "xmas", 147, 134);
AddTown("Moscovia", "moscovia", 214, 183);
AddTown("Morroc", "morocc", 156, 93);
AddTown("Nameless Island", "nameless_n", 256, 215);
AddTown("Niflheim", "niflheim", 85, 154);
AddTown("Payon", "payon", 152, 75);
AddTown("Rachel", "rachel", 130, 137);
AddTown("Thor Camp", "thor_camp", 254, 90);
AddTown("Veins", "veins", 216, 123);
AddTown("Yuno", "yuno", 157, 51);
AddTown("Umbala", "umbala", 145, 155);
//Add Dungeons here
AddDungeon("Abbey, Cursed Monastery", "abbey01", 51, 14);
AddDungeon("Abyss Lakes", "abyss_01", 262, 273);
AddDungeon("Amatsu Dungeon", "ama_dun01", 228, 11);
AddDungeon("Anthell", "anthell01", 35, 262);
AddDungeon("Beach Dungeon", "beach_dun", 266, 67);
AddDungeon("Ayothaya Dungeon", "ayo_dun01", 275, 19);
AddDungeon("Byalan Dungeon", "iz_dun00", 168, 168);
AddDungeon("Clock Tower", "c_tower1", 199, 159);
AddDungeon("Coal Mines", "mjo_dun01", 52, 17);
AddDungeon("Culverts", "prt_sewb1", 131, 247);
AddDungeon("Einbroch Dungeon", "ein_dun01", 22, 14);
AddDungeon("Gefenia", "gefenia01", 40, 103);
AddDungeon("Geffen Dungeon", "gef_dun00", 104, 99);
AddDungeon("Glast Heim Church", "glast_01", 200, 134);
AddDungeon("Glast Heim Churchyard", "gl_chyard", 147, 15);
AddDungeon("Glast Heim Castle", "gl_cas01", 199, 27);
AddDungeon("Glast Heim Underprison", "gl_prison", 18, 70);
AddDungeon("Glast Heim Culvert", "gl_sew01", 258, 255);
AddDungeon("Glast Heim Dungeon", "gl_dun01", 133, 271);
AddDungeon("Gonryun Dungeon", "gon_dun01", 153, 53);
AddDungeon("Hidden Dungeon", "prt_maze01", 176, 7);
AddDungeon("Ice Dungeon", "ice_dun01", 157, 14);
AddDungeon("Juperos Dungeon", "juperos_01", 53, 247);
AddDungeon("Kiel Dungeon", "kh_dun01", 28, 226);
AddDungeon("Lighthalzen Dungeon", "lhz_dun01", 150, 288);
AddDungeon("The Royal Tomb", "lou_dun01", 218, 196);
AddDungeon("Magma Dungeon", "mag_dun01", 126, 68);
AddDungeon("Les Forest", "mosk_dun01", 132, 124);
AddDungeon("Orc Dungeon", "orcsdun01", 32, 170);
AddDungeon("Payon Dungeon", "pay_dun00", 21, 183);
AddDungeon("Pyramids", "moc_pryd01", 192, 9);
AddDungeon("Rachel Sanctuary", "ra_san01", 140, 11);
AddDungeon("Sphinx", "in_sphinx1", 288, 9);
AddDungeon("Sunken Ship", "treasure01", 69, 24);
AddDungeon("Thanatos Tower", "tha_t01", 150, 39);
AddDungeon("Thor Volcano", "thor_v01", 21, 228);
AddDungeon("Toy Factory", "xmas_dun01", 205, 15);
AddDungeon("Turtle Dungeon", "tur_dun01", 154, 49);
AddDungeon("Umbala Dungeon", "um_dun01", 42, 31);
AddDungeon("Yggdrasil", "yggdrasil01",38,64);
//Add Fields here
//AddField("<Map Menu Name>", <"map name">, <x>, <y>);
AddField("Kokomo Beach", "cmd_fild02", 223, 370);
AddField("Nifelheim Field", "nif_fild01", 341, 324);
AddField("Rachel Field", "ra_fild04", 313, 379);
AddField("Payon Field", "pay_fild02", 267, 114);
AddField("Yuno Field", "yuno_fild06", 362, 138);
L_warpmenu:
mes "[^FF7700Warpra^000000]";
mes "Welcome!";
switch(select(((.lastwarp)?"Last Warp [^0000FF"+((@lastwarpname$)?@lastwarpname$:"^0000FF-empty-^000000")+"^000000] (^FF0000"+.lastwarpfee+"z^000000)":""),
((.towns)?"Towns (^FF0000"+.townfee+"z^000000)":""),
((.dungeons)?"Dungeons (^FF0000"+.dungeonfee+"z^000000)":""),
((.fields)?"Fields (^FF0000"+.fieldfee+"z^000000)":""),
"Exit")) {
case 1:
if (@lastwarpname$=="") close;
if(Zeny<.lastwarpfee){mes "I'm sorry you don't have enought Zeny to warp, please try again later."; close;}
set Zeny,Zeny-.lastwarpfee;
warp @lastwarpmap$, @lastwarpx, @lastwarpy;
break;
case 2:
set .@townmenu$,"";
for (set .@i,0; .@i < getarraysize(.townname$); set .@i,.@i+1) {
if (.@i) set .@townmenu$,.@townmenu$+":";
set .@townmenu$,.@townmenu$+.townname$[.@i];
}
set .@selection,select(.@townmenu$)-1;
if(Zeny<.townfee){mes "I'm sorry you don't have enought Zeny to warp, please try again later."; close;}
set Zeny,Zeny-.townfee;
warp .townmap$[.@selection],.townx[.@selection],.towny[.@selection];
LastWarp(.townname$[.@selection], .townmap$[.@selection], .townx[.@selection], .towny[.@selection]);
break;
case 3:
set .@dungeonmenu$,"";
for (set .@j,0; .@j < getarraysize(.dungeonname$); set .@j,.@j+1) {
if (.@j) set .@dungeonmenu$,.@dungeonmenu$+":";
set .@dungeonmenu$,.@dungeonmenu$+.dungeonname$[.@j];
}
set .@selection2,select(.@dungeonmenu$)-1;
if(Zeny<.dungeonfee){mes "I'm sorry you don't have enought Zeny to warp, please try again later."; close;}
set Zeny,Zeny-.dungeonfee;
warp .dungeonmap$[.@selection2],.dungeonx[.@selection2],.dungeony[.@selection2];
LastWarp(.dungeonname$[.@selection2], .dungeonmap$[.@selection2], .dungeonx[.@selection2], .dungeony[.@selection2]);
break;
case 4:
set .@fieldmenu$,"";
for (set .@k,0; .@k < getarraysize(.fieldname$); set .@k,.@k+1) {
if (.@k) set .@fieldmenu$,.@fieldmenu$+":";
set .@fieldmenu$,.@fieldmenu$+.fieldname$[.@k];
}
set .@selection3,select(.@fieldmenu$)-1;
if(Zeny<.fieldfee){mes "I'm sorry you don't have enought Zeny to warp, please try again later."; close;}
set Zeny,Zeny-.fieldfee;
warp .fieldmap$[.@selection3],.fieldx[.@selection3],.fieldy[.@selection3];
LastWarp(.fieldname$[.@selection3], .fieldmap$[.@selection3], .fieldx[.@selection3], .fieldy[.@selection3]);
break;
case 5:
next;
mes "[^FF7700Warpra^000000]";
mes "Bye!";
close;
}
function AddTown {
if(getmapusers(getarg(1)) >= 0) {
set .townname$[getarraysize(.townname$)], getarg(0);
set .townmap$[getarraysize(.townmap$)], getarg(1);
set .townx[getarraysize(.townx)], getarg(2);
set .towny[getarraysize(.towny)], getarg(3);
return;
}
return;
}
function AddDungeon {
if(getmapusers(getarg(1)) >= 0) {
set .dungeonname$[getarraysize(.dungeonname$)], getarg(0);
set .dungeonmap$[getarraysize(.dungeonmap$)], getarg(1);
set .dungeonx[getarraysize(.dungeonx)], getarg(2);
set .dungeony[getarraysize(.dungeony)], getarg(3);
return;
}
return;
}
function AddField {
if(getmapusers(getarg(1)) >= 0) {
set .fieldname$[getarraysize(.fieldname$)], getarg(0);
set .fieldmap$[getarraysize(.fieldmap$)], getarg(1);
set .fieldx[getarraysize(.fieldx)], getarg(2);
set .fieldy[getarraysize(.fieldy)], getarg(3);
return;
}
return;
}
function LastWarp {
set @lastwarpname$, getarg(0);
set @lastwarpmap$, getarg(1);
set @lastwarpx, getarg(2);
set @lastwarpy, getarg(3);
return;
}
}
rachel.gat,122,148,4 duplicate(Warpra#1-1) Warpra#1-12-2 708
alberta,110,137,4 duplicate(Warpra#1-1) Warpra#1-13-1 708
aldebaran,147,117,4 duplicate(Warpra#1-1) Warpra#1-14-1 708
amatsu,190,86,1 duplicate(Warpra#1-1) Warpra#1-15-1 708
ayothaya,147,123,6 duplicate(Warpra#1-1) Warpra#1-16-1 708
comodo,206,77,4 duplicate(Warpra#1-1) Warpra#1-17-1 708
einbech,196,83,4 duplicate(Warpra#1-1) Warpra#1-18-1 708
einbroch,182,172,4 duplicate(Warpra#1-1) Warpra#1-19-1 708
einbroch,243,189,2 duplicate(Warpra#1-1) Warpra#1-19-2 708
hugel,88,151,5 duplicate(Warpra#1-1) Warpra#1-110-1 708
lighthalzen,165,94,6 duplicate(Warpra#1-1) Warpra#1-111-1 708
geffen,116,59,0 duplicate(Warpra#1-1) Warpra#1-112-1 708
izlude,122,94,3 duplicate(Warpra#1-1) Warpra#1-113-1 708
xmas,149,136,4 duplicate(Warpra#1-1) Warpra#1-114-1 708
morocc,156,95,4 duplicate(Warpra#1-1) Warpra#1-115-1 708
payon,148,228,4 duplicate(Warpra#1-1) Warpra#1-116-1 708
yuno,160,170,4 duplicate(Warpra#1-1) Warpra#1-117-1 708
moc_fild04.gat,207,331,4 duplicate(Warpra#1-1) Warpra#1-118-1 708
izlu2dun.gat,104,82,4 duplicate(Warpra#1-1) Warpra#1-119-1 708
mjolnir_02.gat,85,363,4 duplicate(Warpra#1-1) Warpra#1-120-1 708
prt_fild05.gat,273,215,4 duplicate(Warpra#1-1) Warpra#1-121-1 708
glast_01.gat,370,308,4 duplicate(Warpra#1-1) Warpra#1-122-1 708
yuno_fild03.gat,37,135,4 duplicate(Warpra#1-1) Warpra#1-123-1 708
gef_fild10.gat,71,339,4 duplicate(Warpra#1-1) Warpra#1-124-1 708
pay_arche.gat,39,135,4 duplicate(Warpra#1-1) Warpra#1-125-1 708
moc_ruins.gat,64,166,4 duplicate(Warpra#1-1) Warpra#1-126-1 708
moc_fild19.gat,106,97,4 duplicate(Warpra#1-1) Warpra#1-127-1 708
alb2trea.gat,73,101,4 duplicate(Warpra#1-1) Warpra#1-128-1 708
tur_dun01.gat,148,239,4 duplicate(Warpra#1-1) Warpra#1-129-1 708
gonryun,162,122,4 duplicate(Warpra#1-1) Warpra#1-130-1 708
louyang,221,120,4 duplicate(Warpra#1-1) Warpra#1-131-1 708
umbala,95,164,4 duplicate(Warpra#1-1) Warpra#1-132-1 708
moscovia,220,198,4 duplicate(Warpra#1-1) Warpra#1-133-1 708
veins,217,127,4 duplicate(Warpra#1-1) Warpra#1-134-1 708
rachel,133,115,4 duplicate(Warpra#1-1) Warpra#1-135-1 708
arenalounge,90,75,5 duplicate(Warpra#1-1) Warpra#1-136-1 708
premcity,154,120,3 duplicate(Warpra#1-1) Warpra#1-137-1 708
Thank you for your time!