Jump to content
  • 0

Question

Posted
//===== rAthena Script ======================================= 
//= Warper
//===== By: ================================================== 
//= Euphy
//===== Current Version: =====================================
//= 1.2
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: ========================================= 
//= A complete - but very condensed - warper script.
//= Coordinates written largely by Tekno-Kanix and ToastOfDoom.
//============================================================

-	script	Warper	-1,{
function Go; function Disp; function Pick;

// --------------------------------------------------
//	Main Menu:
// --------------------------------------------------

menu	"Last Warp ^777777["+lastwarp$+"]^000000",-,
" ~ Towns",Towns, 
" ~ Fields",Fields, 
" ~ Dungeons",Dungeons;
//" ~ Guild Castles",Castles;  
//"~ Special Areas",Special;

	if (lastwarp$ == "") {dispbottom "You have not warped anywhere yet."; close;}

		specialeffect2 501;
		sleep2 1000;
		specialeffect2 445;
		sleep2 1000;
		warp lastwarp$,lastwarpx,lastwarpy;
	close2;

// ------------------- Functions -------------------
// * Go("<map>",<x>,<y>);
//	~ Warps directly to a map.
// * Disp("<Menu Option>",<first option>,<last option>);
// * Pick("<map_prefix>"{,<index offset>});
//	~ Dynamic menu and map selection.
// * Disp("","<Option 1>:<Option 2>:<etc.>");
// * Pick("","<map1>","<map2>","<etc.>");
//	~ Manual menu and map selection.
//
// Other notes:
//   ~ Array @c[] holds all (x,y) coordinates.
//   ~ Use @c[2] EXCEPT when maps begin dynamically
//	  at 0: use @c[0] and Pick() offset 1.
// --------------------------------------------------

function Go {
	specialeffect2 501;
	sleep2 1000;
	specialeffect2 445;
	sleep2 1000;
	warp getarg(0),getarg(1,0),getarg(2,0);
	getmapxy(lastwarp$,lastwarpx,lastwarpy,0);
	close2;
}
function Disp {
	set @menu$,"";
	if(getarg(0)=="") {
		set @menu$,getarg(1);
		return;
	}
	for(set .@i,getarg(1); .@i<=getarg(2); set .@i,.@i+1)
		set @menu$, @menu$+getarg(0)+" "+.@i+":";
	return;
}
function Pick {
	if(getarg(0)=="") {
		set .@i, select(@menu$);
		specialeffect2 501;
		sleep2 1000;
		specialeffect2 445;
		sleep2 1000;
		warp getarg(.@i),@c[.@i*2],@c[.@i*2+1];
	} else {
		set .@i, select(@menu$)-getarg(1,0);
		specialeffect2 501;
		sleep2 1000;
		specialeffect2 445;
		sleep2 1000;
		warp getarg(0)+((.@i<10)?"0":"")+.@i,@c[.@i*2],@c[.@i*2+1];
	}
	getmapxy(lastwarp$,lastwarpx,lastwarpy,0);
	close2;
}

// --------------------------------------------------
	Towns:
// --------------------------------------------------
menu	
"Prontera",T1,
"Alberta",T2,
"Aldebaran",T3,
"Amatsu",T4,
"Ayothaya",T5,
//"Brasilis",T6,
"Comodo",T7,
//"Dewata",T33,
//"Eclage",T34,
//"Einbech",T8, 
"Einbroch",T9,
//"El Dicastes",T10,
"Geffen",T11,
"Gonryun",T12,
"Hugel",T13,
"Izlude",T14,
"Jawaii",T15,
"Lighthalzen",T16,
"Louyang",T17,
"Lutie",T18,
//"Malangdo",T35,
//"Malaya",T36,
//"Manuk",T19,
//"Midgarts Expedition Camp",T20,
//"Mora",T21,
"Morroc",T22,
//"Moscovia",T23,
//"Nameless Island",T24,
"Niflheim",T25,
"Payon",T26,
"Rachel",T27,
//"Splendide",T28,
//"Thor Camp",T29,
"Umbala",T30,
"Veins",T31, "Yuno",T32;

T1: Go("prontera",156,185);
T2: Go("alberta",117,57);
T3: Go("aldebaran",166,112);
T4: Go("amatsu",198,84);
T5: Go("ayothaya",217,187);
T6: Go("brasilis",195,220);
T7: Go("comodo",209,143);
T8: Go("einbech",70,95);
T9: Go("einbroch",64,200);
T10: Go("dicastes01",197,187);
T11: Go("geffen",119,40);
T12: Go("gonryun",160,62);
T13: Go("hugel",96,145);
T14: Go("izlude",94,103);
T15: Go("jawaii",204,286);
T16: Go("lighthalzen",158,94);
T17: Go("louyang",217,40);
T18: Go("xmas",147,134);
T19: Go("manuk",260,175);
T20: Go("mid_camp",210,288);
T21: Go("mora",111,97);
T22: Go("morocc",156,46);
T23: Go("moscovia",223,184);
T24: Go("nameless_n",256,215);
T25: Go("niflheim",21,153);
T26: Go("payon",160,58);
T27: Go("rachel",130,110);
T28: Go("splendide",200,153);
T29: Go("thor_camp",246,68);
T30: Go("umbala",89,157);
T31: Go("veins",216,123);
T32: Go("yuno",157,51);
T33: Go("dewata",199,179);
T34: Go("eclage",111,39);
T35: Go("malangdo",224,184);
T36: Go("malaya",212,206);

// --------------------------------------------------
	Fields:
// --------------------------------------------------
menu	
"Amatsu Fields",F1, 
"Ayothaya Fields",F2, 
//"Bifrost Fields", F3,
//"Brasilis Fields",F4, 
"Comodo Fields",F5, 
//"Dewata Fields",F26,
//"Eclage Fields",F27, 
"Einbroch Fields",F6, 
//"El Dicastes Fields",F7,
"Geffen Fields",F8, 
"Gonryun Fields",F9, 
"Hugel Fields",F10,
"Lighthalzen Fields",F11, 
"Louyang Field",F12, 
"Lutie Field",F13,
//"Malaya Fields",F28, 
"Manuk Fields",F14, 
"Mjolnir Fields",F15,
"Moscovia Fields",F16, 
"Niflheim Fields",F17, 
"Payon Forests",F18,
"Prontera Fields",F19, 
"Rachel Fields",F20, 
"Sograt Deserts",F21,
"Splendide Fields",F22, 
"Umbala Fields",F23, 
"Veins Fields",F24,
"Yuno Fields",F25;


F1: setarray @c[2],0,0;
	Disp("Amatsu Field",1,1); Pick("ama_fild");
F2: setarray @c[2],0,0,0,0;
	Disp("Ayothaya Field",1,2); Pick("ayo_fild");
F3: setarray @c[2],0,0,0,0;
	Disp("Bifrost Field",1,2); Pick("bif_fild");
F4: setarray @c[2],0,0;
	Disp("Brasilis Field",1,1); Pick("bra_fild");
F5: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("Comodo Field",1,9); Pick("cmd_fild");
F6: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("Einbroch Field",1,10); Pick("ein_fild");
F7: setarray @c[2],0,0,0,0;
	Disp("El Dicastes Field",1,2); Pick("dic_fild");
F8: setarray @c[0],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("Geffen Field",0,14); Pick("gef_fild",1);
F9: setarray @c[2],0,0;
	Disp("Gonryun Field",1,1); Pick("gon_fild");
F10: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("Hugel Field",1,7); Pick("hu_fild");
F11: setarray @c[2],0,0,0,0,0,0;
	Disp("Lighthalzen Field",1,3); Pick("lhz_fild");
F12: setarray @c[2],0,0;
	Disp("Louyang Field",1,1); Pick("lou_fild");
F13: setarray @c[2],0,0;
	Disp("Lutie Field",1,1); Pick("xmas_fild");
F14: setarray @c[2],0,0,0,0,0,0;
	Disp("Manuk Field",1,3); Pick("man_fild");
F15: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("Mjolnir Field",1,12); Pick("mjolnir_");
F16: setarray @c[2],0,0,0,0;
	Disp("Moscovia Field",1,2); Pick("mosk_fild");
F17: setarray @c[2],0,0,0,0;
	Disp("Niflheim Field",1,2); Pick("nif_fild");
F18: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("Payon Forest",1,11); Pick("pay_fild");
F19: setarray @c[0],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("Prontera Field",0,11); Pick("prt_fild",1);
F20: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("Rachel Field",1,13); Pick("ra_fild");
F21: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("","Sograt Desert 1:Sograt Desert 2:Sograt Desert 3:Sograt Desert 7:Sograt Desert 11:Sograt Desert 12:Sograt Desert 13:Sograt Desert 16:Sograt Desert 17:Sograt Desert 18:Sograt Desert 19:Sograt Desert 20:Sograt Desert 21:Sograt Desert 22");
	Pick("","moc_fild01","moc_fild02","moc_fild03","moc_fild07","moc_fild11","moc_fild12","moc_fild13","moc_fild16","moc_fild17","moc_fild18","moc_fild19","moc_fild20","moc_fild21","moc_fild22");
F22: setarray @c[2],0,0,0,0,0,0;
	Disp("Splendide Field",1,3); Pick("spl_fild");
F23: setarray @c[2],0,0,0,0,0,0,0,0;
	Disp("Umbala Field",1,4); Pick("um_fild");
F24: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("Veins Field",1,7); Pick("ve_fild");
F25: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("Yuno Field",1,12); Pick("yuno_fild");
F26: setarray @c[2],0,0;
	Disp("Dewata Field",1,1); Pick("dew_fild");
F27: setarray @c[2],0,0;
	Disp("Eclage Field",1,1); Pick("ecl_fild");
F28: setarray @c[2],0,0,0,0;
	Disp("Malaya Field",1,2); Pick("ma_fild");

// --------------------------------------------------
	Dungeons:
// --------------------------------------------------
menu	
"Abyss Lakes",D1, 
"Amatsu Dungeon",D2, 
"Anthell",D3,
"Ayothaya Dungeon",D4, 
"Beach Dungeon",D5, 
"Bio Labs",D6,
//"Brasilis Dungeon",D7, 
"Byalan Dungeon",D8, 
"Clock Tower",D9,
"Coal Mines",D10, 
"Culvert",D11, 
"Cursed Abbey",D12, 
//"Dewata Dungeon",D41,
"Einbroch Dungeon",D13, 
//"Endless Tower",D14, 
"Gefenia",D15,
"Geffen Dungeon",D16, 
"Glast Heim",D17, 
"Gonryun Dungeon",D18,
//"Guild Dungeons",GD, 
"Hidden Dungeon",D19, 
"Ice Dungeon",D20,
"Juperos",D21, 
"Kiel Dungeon",D22, 
"Louyang Dungeon",D23,
"Magma Dungeon",D24, 
//"Malangdo Dungeon",D42, 
"Moscovia Dungeon",D25,
//"Nidhogg's Dungeon",D26, 
"Odin Temple",D27, 
"Orc Dungeon",D28, 
"Payon Dungeon",D29,
"Pyramids",D30, 
"Rachel Sanctuary",D31, 
//"Scaraba Hole",D32, 
//"Sealed Shrine",D33,
"Sphinx",D34, 
"Sunken Ship",D35, 
"Thanatos Tower",D36, 
"Thor Volcano",D37,
"Toy Factory",D38, 
"Turtle Dungeon",D39, 
"Umbala Dungeon",D40;

D1: setarray @c[2],0,0,0,0,0,0;
	Disp("Abyss Lakes",1,3); Pick("abyss_");
D2: setarray @c[2],0,0,0,0,0,0;
	Disp("Amatsu Dungeon",1,3); Pick("ama_dun");
D3: setarray @c[2],0,0,0,0;
	Disp("Anthell",1,2); Pick("anthell");
D4: setarray @c[2],0,0,0,0;
	Disp("","Ancient Shrine Maze:Inside Ancient Shrine"); Pick("ayo_dun");
D5: setarray @c[2],0,0,0,0,0,0;
	Disp("Beach Dungeon",1,3); Pick("","beach_dun","beach_dun2","beach_dun3");
D6: setarray @c[2],0,0,0,0,0,0; //,245,58 Bio Lab 4
	Disp("Bio Lab",1,3); Pick("lhz_dun");
D7: setarray @c[2],0,0,0,0;
	Disp("Brasilis Dungeon",1,2); Pick("bra_dun");
D8: setarray @c[0],0,0,0,0,0,0,0,0,0,0;
	Disp("Byalan Dungeon",1,5); Pick("iz_dun",1);
D9: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("","Clock Tower 1:Clock Tower 2:Clock Tower 3:Clock Tower 4:Basement 1:Basement 2:Basement 3:Basement 4");
	Pick("","c_tower1","c_tower2","c_tower3","c_tower4","alde_dun01","alde_dun02","alde_dun03","alde_dun04");
D10: setarray @c[2],0,0,0,0,0,0;
	Disp("Coal Mines",1,3); Pick("mjo_dun");
D11: setarray @c[2],0,0,0,0,0,0,0,0;
	Disp("Culvert",1,4); Pick("","prt_sewb1","prt_sewb2","prt_sewb3","prt_sewb4");
D12: setarray @c[2],0,0,0,0,0,0;
	Disp("Cursed Abbey",1,3); Pick("abbey");
D13: setarray @c[2],0,0,0,0;
	Disp("Einbroch Dungeon",1,2); Pick("ein_dun");
D14: setarray @c[2],0,0;
	Disp("","Misty Island"); Pick("","e_tower");
D15: setarray @c[2],0,0,0,0,0,0,0,0;
	Disp("Gefenia",1,4); Pick("gefenia",0);
D16: setarray @c[0],0,0,0,0,0,0,0,0;
	Disp("Geffen Dungeon",1,4); Pick("gef_dun",1);
D17: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("","Entrance:Castle 1:Castle 2:Chivalry 1:Chivalry 2:Churchyard:Culvert 1:Culvert 2:Culvert 3:Culvert 4:St. Abbey:Staircase Dungeon:Underground Cave 1:Underground Cave 2:Underground Prison 1:Underground Prison 2");
	Pick("","glast_01","gl_cas01","gl_cas02","gl_knt01","gl_knt02","gl_chyard","gl_sew01","gl_sew02","gl_sew03","gl_sew04","gl_church","gl_step","gl_dun01","gl_dun02","gl_prison","gl_prison1");
D18: setarray @c[2],0,0,0,0,0,0;
	Disp("Gonryun Dungeon",1,3); Pick("gon_dun");
D19: setarray @c[2],0,0,0,0,0,0;
	Disp("Hidden Dungeon",1,3); Pick("prt_maze");
D20: setarray @c[2],0,0,0,0,0,0,0,0;
	Disp("Ice Dungeon",1,4); Pick("ice_dun");
D21: setarray @c[2],0,0,0,0,0,0,0,0;
	Disp("","Entrance:Juperos 1:Juperos 2:Core");
	Pick("","jupe_cave","juperos_01","juperos_02","jupe_core");
D22: setarray @c[2],0,0,0,0;
	Disp("Kiel Dungeon",1,2); Pick("kh_dun");
D23: setarray @c[2],0,0,0,0,0,0,0,0;
	Disp("","The Royal Tomb:Inside the Royal Tomb:Suei Long Gon"); Pick("lou_dun");
D24: setarray @c[2],0,0,0,0;
	Disp("Magma Dungeon",1,2); Pick("mag_dun");
D25: setarray @c[2],0,0,0,0,0,0;
	Disp("Moscovia Dungeon",1,3); Pick("mosk_dun");
D26: setarray @c[2],0,0,0,0;
	Disp("Nidhogg's Dungeon",1,2); Pick("nyd_dun");
D27: setarray @c[2],0,0,0,0,0,0;
	Disp("Odin Temple",1,3); Pick("odin_tem");
D28: setarray @c[2],0,0,0,0;
	Disp("Orc Dungeon",1,2); Pick("orcsdun");
D29: setarray @c[0],0,0,0,0,0,0,0,0,0,0;
	Disp("Payon Dungeon",1,5); Pick("pay_dun",1);
D30: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("","Pyramids 1:Pyramids 2:Pyramids 3:Pyramids 4:Basement 1:Basement 2"); Pick("moc_pryd");
D31: setarray @c[2],0,0,0,0,0,0,0,0,0,0;
	Disp("Rachel Sanctuary",1,5); Pick("ra_san");
D32: setarray @c[2],0,0,0,0;
	Disp("Scaraba Hole",1,2); Pick("dic_dun");
D33: setarray @c[2],0,0;
	Disp("","Friar Patrick"); Pick("","monk_test");
D34: setarray @c[2],0,0,0,0,0,0,0,0,0,0;
	Disp("Sphinx",1,5); Pick("","in_sphinx1","in_sphinx2","in_sphinx3","in_sphinx4","in_sphinx5");
D35: setarray @c[2],0,0,0,0;
	Disp("Sunken Ship",1,2); Pick("treasure");
D36: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("Thanatos Tower",1,12); Pick("tha_t");
D37: setarray @c[2],0,0,0,0,0,0;
	Disp("Thor Volcano",1,3); Pick("thor_v");
D38: setarray @c[2],0,0,0,0;
	Disp("Toy Factory",1,2); Pick("xmas_dun");
D39: setarray @c[2],0,0,0,0,0,0,0,0;
	Disp("","Entrance:Turtle Dungeon 1:Turtle Dungeon 2:Turtle Dungeon 3"); Pick("tur_dun");
D40: setarray @c[2],0,0,0,0,0,0;
	Disp("","Carpenter's Shop in the Tree:Passage to a Foreign World:Hvergermil's Fountain");
	Pick("","um_dun01","um_dun02","yggdrasil01");
D41: setarray @c[2],0,0,0,0;
	Disp("Dewata Dungeon",1,2); Pick("dew_dun");
D42: setarray @c[2],0,0;
	Disp("Malangdo Dungeon",1,1); Pick("mal_dun");
GD: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0;
	Disp("","Baldur:Luina:Valkyrie:Britoniah:Arunafeltz:Schwaltzvalt");
	Pick("","gld_dun01","gld_dun02","gld_dun03","gld_dun04","arug_dun01","schg_dun01");

// --------------------------------------------------
	Castles:
// --------------------------------------------------
menu	
"Aldebaran Castles",C1, 
"Geffen Castles",C2, 
"Payon Castles",C3,
"Prontera Castles",C4, 
"Arunafeltz Castles",C5, 
"Schwaltzvalt Castles",C6;

C1: setarray @c[2],48,83,95,249,142,85,239,242,264,90;
	Disp("","Neuschwanstein:Hohenschwangau:Nuenberg:Wuerzburg:Rothenburg");
	Pick("","alde_gld","alde_gld","alde_gld","alde_gld","alde_gld");
C2: setarray @c[2],214,75,308,240,143,240,193,278,305,87;
	Disp("","Repherion:Eeyolbriggar:Yesnelph:Bergel:Mersetzdeitz");
	Pick("","gef_fild13","gef_fild13","gef_fild13","gef_fild13","gef_fild13");
C3: setarray @c[2],121,233,295,116,317,293,140,160,204,266;
	Disp("","Bright Arbor:Scarlet Palace:Holy Shadow:Sacred Altar:Bamboo Grove Hill");
	Pick("","pay_gld","pay_gld","pay_gld","pay_gld","pay_gld");
C4: setarray @c[2],134,65,240,128,153,137,111,240,208,240;
	Disp("","Kriemhild:Swanhild:Fadhgridh:Skoegul:Gondul");
	Pick("","prt_gld","prt_gld","prt_gld","prt_gld","prt_gld");
C5: setarray @c[2],158,272,83,47,68,155,299,345,292,107;
	Disp("","Mardol:Cyr:Horn:Gefn:Banadis");
	Pick("","aru_gld","aru_gld","aru_gld","aru_gld","aru_gld");
C6: setarray @c[2],293,100,288,252,97,196,137,90,71,315;
	Disp("","Himinn:Andlangr:Viblainn:Hljod:Skidbladnir");
	Pick("","sch_gld","sch_gld","sch_gld","sch_gld","sch_gld");

// --------------------------------------------------
	Special:
// --------------------------------------------------
menu	"Auction Hall",S1, "Battlegrounds",S2, "Casino",S3, "Gonryun Arena",S4,
	"Izlude Arena",S5, "Monster Race Arena",S6, "Turbo Track",S7;

S1: Go("auction_01",22,68);
S2: Go("bat_room",154,150);
S3: Go("cmd_in02",179,129);
S4: Go("gon_test",48,10);
S5: Go("arena_room",100,88);
S6: Go("p_track01",62,41);
S7: Go("turbo_room",99,114);
}

// --------------------------------------------------
//	Duplicates:
// --------------------------------------------------
prontera,158,191,4	duplicate(Warper)	Warper#1	721

 

 

anyone can help me on this script I just want this warps you to random  x and y....

2 answers to this question

Recommended Posts

Posted (edited)

i think you can try to edit the coordinates to "0" so that it will still be configurable

T1: Go("prontera",0,0);

if you want less work you can do this but will make coordinates useless.

function Pick {
	if(getarg(0)=="") {
		set .@i, select(@menu$);
		specialeffect2 501;
		sleep2 1000;
		specialeffect2 445;
		sleep2 1000;
		warp getarg(.@i),0,0; //change coordinates to 0,0
	} else {
		set .@i, select(@menu$)-getarg(1,0);
		specialeffect2 501;
		sleep2 1000;
		specialeffect2 445;
		sleep2 1000;
		warp getarg(0)+((.@i<10)?"0":"")+.@i,0,0; //change coordinates to 0,0
	}
        getmapxy(lastwarp$,lastwarpx,lastwarpy,0);
	close2;
}

I don't know if I miss anything.

 

EDIT: missed this

function Go {
	specialeffect2 501;
	sleep2 1000;
	specialeffect2 445;
	sleep2 1000;
	warp getarg(0),0,0; //change coordinates to 0,0
	getmapxy(lastwarp$,lastwarpx,lastwarpy,0);
	close2;
}
Edited by LuLu

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.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...