Jump to content

Question

Hello guys!

 

I would like to add restrictions to use the teleport for certain maps.
 
For example: for only vip players can go to the 2 floor payon field.
 
What I need to put in script?
 
@edit
 
And it is necessary that you search for a certain place to be able to teleport.
 
For example: second floor of moscow, you must have done a quest to be able to teleport to this location.
 
Thank you  ^_^
Edited by DoriTos Nacho

Share this post


Link to post
Share on other sites

10 answers to this question

Recommended Posts

  • 0

For the restrictions part, show us or tell us how your vip system works.

If its like the others changing group level to 1 you just need to add if statement,

e.g

if(getgmlevel() >= 1){
  // Do this
}

Share this post


Link to post
Share on other sites
  • 0

 

For the restrictions part, show us or tell us how your vip system works.

If its like the others changing group level to 1 you just need to add if statement,

e.g

if(getgmlevel() >= 1){
  // Do this
}

 

So, I need to put the maps bellow this command?

Share this post


Link to post
Share on other sites
  • 0

Can you post your warper script so that we can configure it

 

 

//===== Hercules Script ======================================
//= Warper
//===== By: ==================================================
//= Euphy
//===== Current Version: =====================================
//= 1.4b
//===== Description: =========================================
//= A complete - but very condensed - warper script.
//= Some coordinates written by Tekno-Kanix and ToastOfDoom.
//===== Additional Comments: =================================
//= 1.0 Initial script.
//= 1.1 Added missing duplicates and fixed coordinates.
//= 1.2 Added new episodes and simplified functions.
//= 1.3 Added Renewal checks and Instances menu.
//=     Aligned coordinates with @go.
//= 1.4 Added new Guild Dungeons.
//= 1.4a Slight edits.
//= 1.4b Added Wolfchev's Laboratory warp.
//============================================================

-	script	Warper	FAKE_NPC,{
function Go; function Disp; function Pick; function Restrict;

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

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

	if (lastwarp$ == "")
		message strcharinfo(PC_NAME),"You haven't warped anywhere yet.";
	else
		warp lastwarp$,lastwarpx,lastwarpy;
	end;

// ------------------- 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 (auto-numbered).
//
// * Disp("<Option 1>:<Option 2>:<etc.>");
// * Pick("","<map1>","<map2>","<etc.>");
//	~ Manual menu and map selection (listed).
//
// * Restrict("<RE | Pre-RE>"{,<menu option numbers>});
//	~ Only allows map for Renewal or Pre-Renewal modes.
//     If menu option numbers are given, only those maps
//     will be restricted (i.e. not for "Go").
//
// 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 {
	lastwarp$ = getarg(0);
	lastwarpx = getarg(1,0);
	lastwarpy = getarg(2,0);
	warp getarg(0),getarg(1,0),getarg(2,0);
	end;
}
function Disp {
	if (getargcount() < 3)
		@menu$ = getarg(0);
	else {
		@menu$ = "";
		for (.@i = getarg(1); .@i <= getarg(2); .@i++)
			@menu$ = @menu$+getarg(0)+" "+.@i+":";
	}
	return;
}
function Pick {
	.@warp_block = @warp_block;
	@warp_block = 0;
	.@select = select(@menu$);
	if (getarg(0) == "") {
		.@i = .@select;
		.@map$ = getarg(.@i);
	} else {
		.@i = .@select-getarg(1,0);
		.@map$ = getarg(0)+((.@i<10)?"0":"")+.@i;
	}
	if (.@warp_block & (1<<.@select)) {
		message strcharinfo(PC_NAME),"This map is not enabled in "+(RENEWAL?"":"Pre-")+"Renewal.";
		end;
	}
	.@x = @c[.@i*2];
	.@y = @c[.@i*2+1];
	deletearray @c[0],getarraysize(@c);
	Go(.@map$,.@x,.@y);
}
function Restrict {
	if ((getarg(0) == "RE" && !RENEWAL) || (getarg(0) == "Pre-RE" && RENEWAL)) {
		if (getarg(1,0)) {
			@warp_block = 0;
			for (.@i = 1; .@i < getargcount(); .@i++)
				@warp_block = @warp_block | (1<<getarg(.@i));
		} else {
			message strcharinfo(PC_NAME),"This map is not enabled in "+(RENEWAL?"":"Pre-")+"Renewal.";
			end;
		}
	}
	return;
}

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

T1: Go("prontera",155,183);
T2: Go("alberta",28,234);
T3: Go("aldebaran",140,131);
T4: Go("amatsu",198,84);
T5: Go("ayothaya",208,166);
T6: Restrict("RE");
	Go("brasilis",196,217);
T7: Go("comodo",209,143);
T8: Restrict("RE");
	Go("dewata",200,180);
T9: Restrict("RE");
	Go("ecl_in01",48,53);
T10: Go("einbech",63,35);
T11: Go("einbroch",64,200);
T12: Restrict("RE");
	 Go("dicastes01",198,187);
T13: Go("geffen",119,59);
T14: Go("gonryun",160,120);
T15: Go("hugel",96,145);
T16: Go("izlude",128,(RENEWAL?146:114));
T17: Go("jawaii",251,132);
T18: Go("lighthalzen",158,92);
T19: Go("louyang",217,100);
T20: Go("xmas",147,134);
T21: Restrict("RE");
	 Go("malangdo",140,114);
T22: Restrict("RE");
	 Go("malaya",231,200);
T23: Go("manuk",282,138);
T24: Go("mid_camp",210,288);
T25: Restrict("RE");
	 Go("mora",55,146);
T26: Go("morocc",156,93);
T27: Go("moscovia",223,184);
T28: Go("nameless_n",256,215);
T29: Go("niflheim",202,174);
T30: Go("payon",179,100);
T31: Go("rachel",130,110);
T32: Go("splendide",201,147);
T33: Go("thor_camp",246,68);
T34: Go("umbala",97,153);
T35: Go("veins",216,123);
T36: Go("yuno",157,51);

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

F1: setarray @c[2],190,197;
	Disp("Amatsu Field",1,1); Pick("ama_fild");
F2: setarray @c[2],173,134,212,150;
	Disp("Ayothaya Field",1,2); Pick("ayo_fild");
F3: Restrict("RE");
	setarray @c[2],193,220,220,187;
	Disp("Bifrost Field",1,2); Pick("bif_fild");
F4: Restrict("RE");
	setarray @c[2],74,32;
	Disp("Brasilis Field",1,1); Pick("bra_fild");
F5: Restrict("Pre-RE",5);
	setarray @c[2],180,178,231,160,191,172,228,194,224,203,190,223,234,177,194,175,172,172;
	Disp("Comodo Field",1,9); Pick("cmd_fild");
F6: Restrict("RE");
	setarray @c[2],371,212;
	Disp("Dewata Field",1,1); Pick("dew_fild");
F7: Restrict("RE");
	setarray @c[2],97,314;
	Disp("Eclage Field",1,1); Pick("ecl_fild");
F8: Restrict("Pre-RE",2,10);
	setarray @c[2],142,225,182,141,187,228,185,173,216,173,195,148,272,220,173,214,207,174,196,200;
	Disp("Einbroch Field",1,10); Pick("ein_fild");
F9: Restrict("RE");
	setarray @c[2],143,132,143,217;
	Disp("El Dicastes Field",1,2); Pick("dic_fild");
F10: Restrict("Pre-RE",13,15);
	 setarray @c[0],46,199,213,204,195,212,257,192,188,171,166,263,248,158,195,191,186,183,221,117,178,218,136,328,240,181,235,235,211,185;
	 Disp("Geffen Field",0,14); Pick("gef_fild",1);
F11: setarray @c[2],220,227;
	 Disp("Gonryun Field",1,1); Pick("gon_fild");
F12: Restrict("Pre-RE",3,7);
	 setarray @c[2],268,101,222,193,232,185,252,189,196,106,216,220,227,197;
	 Disp("Hugel Field",1,7); Pick("hu_fild");
F13: setarray @c[2],240,179,185,235,240,226;
	 Disp("Lighthalzen Field",1,3); Pick("lhz_fild");
F14: setarray @c[2],229,187;
	 Disp("Louyang Field",1,1); Pick("lou_fild");
F15: setarray @c[2],115,145;
	 Disp("Lutie Field",1,1); Pick("xmas_fild");
F16: Restrict("RE");
	 setarray @c[2],40,272,207,180;
	 Disp("Malaya Field",1,2); Pick("ma_fild");
F17: setarray @c[2],35,236,35,262,84,365;
	 Disp("Manuk Field",1,3); Pick("man_fild");
F18: setarray @c[2],204,120,175,193,208,213,179,180,181,240,195,270,235,202,188,215,205,144,245,223,180,206,196,208;
	 Disp("Mjolnir Field",1,12); Pick("mjolnir_");
F19: setarray @c[2],82,104,131,147;
	 Disp("Moscovia Field",1,2); Pick("mosk_fild");
F20: setarray @c[2],215,229,167,234;
	 Disp("Niflheim Field",1,2); Pick("nif_fild");
F21: Restrict("Pre-RE",5,11);
	 setarray @c[2],158,206,151,219,205,148,186,247,134,204,193,235,200,177,137,189,201,224,160,205,194,150;
	 Disp("Payon Forest",1,11); Pick("pay_fild");
F22: setarray @c[0],208,227,190,206,240,206,190,143,307,252,239,213,185,188,193,194,187,218,210,183,195,149,198,164;
	 Disp("Prontera Field",0,11); Pick("prt_fild",1);
F23: Restrict("Pre-RE",2,7,9,10,11,13);
	 setarray @c[2],192,162,235,166,202,206,202,208,225,202,202,214,263,196,217,201,87,121,277,181,221,185,175,200,174,197;
	 Disp("Rachel Field",1,13); Pick("ra_fild");
F24: setarray @c[2],219,205,177,206,194,182,224,170,198,216,156,187,185,263,206,228,208,238,209,223,85,97,207,202,31,195,38,195;
	 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");
F25: setarray @c[2],175,186,236,184,188,204;
	 Disp("Splendide Field",1,3); Pick("spl_fild");
F26: setarray @c[2],217,206,223,221,237,215,202,197;
	 Disp("Umbala Field",1,4); Pick("um_fild");
F27: Restrict("Pre-RE",5);
	 setarray @c[2],186,175,196,370,222,45,51,250,202,324,150,223,149,307;
	 Disp("Veins Field",1,7); Pick("ve_fild");
F28: Restrict("Pre-RE",5,10);
	 setarray @c[2],189,224,192,207,221,157,226,199,223,177,187,232,231,174,196,203,183,214,200,124,195,226,210,304;
	 Disp("Yuno Field",1,12); Pick("yuno_fild");

// --------------------------------------------------
	Dungeons:
// --------------------------------------------------
menu	"Abyss Lakes",D1, "Amatsu Dungeon",D2, "Anthell",D3,
		"Ayothaya Dungeon",D4, "Beach Dungeon",D5, "Bifrost Tower",D41,
		"Bio Labs",D6, "Brasilis Dungeon",D7, "Byalan Dungeon",D8, "Clock Tower",D9,
		"Coal Mines",D10, "Culvert",D11, "Cursed Abbey",D12, "Dewata Dungeon",D13,
		"Einbroch Dungeon",D14, "Gefenia",D15, "Geffen Dungeon",D16,
		"Glast Heim",D17, "Gonryun Dungeon",D18, "Hidden Dungeon",D19,
		"Ice Dungeon",D20, "Juperos",D21, "Kiel Dungeon",D22, "Louyang Dungeon",D23,
		"Magma Dungeon",D24, "Malangdo Dungeon",D25, "Moscovia Dungeon",D26,
		"Nidhogg's Dungeon",D27, "Odin Temple",D28, "Orc Dungeon",D29,
		"Payon Dungeon",D30, "Pyramids",D31, "Rachel Sanctuary",D32,
		"Scaraba Hole",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],261,272,275,270,116,27;
	Disp("Abyss Lakes",1,3); Pick("abyss_");
D2: setarray @c[2],228,11,34,41,119,14;
	Disp("Amatsu Dungeon",1,3); Pick("ama_dun");
D3: setarray @c[2],35,262,168,170;
	Disp("Anthell",1,2); Pick("anthell");
D4: setarray @c[2],275,19,24,26;
	Disp("Ancient Shrine Maze:Inside Ancient Shrine"); Pick("ayo_dun");
D5: setarray @c[2],266,67,255,244,23,260;
	Disp("Beach Dungeon",1,3); Pick("","beach_dun","beach_dun2","beach_dun3");
D6: Restrict("RE",4);
	setarray @c[2],150,288,150,18,140,134,244,52;
	Disp("Bio Lab",1,4); Pick("lhz_dun");
D7: Restrict("RE");
	setarray @c[2],87,47,262,262;
	Disp("Brasilis Dungeon",1,2); Pick("bra_dun");
D8: Restrict("RE",6);
	setarray @c[0],168,168,253,252,236,204,32,63,26,27,141,187;
	Disp("Byalan Dungeon",1,6); Pick("iz_dun",1);
D9: setarray @c[2],199,159,148,283,65,147,56,155,297,25,127,169,277,178,268,74;
	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],52,17,381,343,302,262;
	 Disp("Coal Mines",1,3); Pick("mjo_dun");
D11: setarray @c[2],131,247,19,19,180,169,100,92;
	 Disp("Culvert",1,4); Pick("","prt_sewb1","prt_sewb2","prt_sewb3","prt_sewb4");
D12: setarray @c[2],51,14,150,11,120,10;
	 Disp("Cursed Abbey",1,3); Pick("abbey");
D13: Restrict("RE");
	 setarray @c[2],285,160,299,29;
	 Disp("Dewata Dungeon",1,2); Pick("dew_dun");
D14: setarray @c[2],22,14,292,290;
	 Disp("Einbroch Dungeon",1,2); Pick("ein_dun");
D15: setarray @c[2],40,103,203,34,266,168,130,272;
	 Disp("Gefenia",1,4); Pick("gefenia",0);
D16: setarray @c[0],104,99,115,236,106,132,203,200;
	 Disp("Geffen Dungeon",1,4); Pick("gef_dun",1);
D17: setarray @c[2],370,304,199,29,104,25,150,15,157,287,147,15,258,255,108,291,171,283,68,277,156,7,12,7,133,271,224,274,14,70,150,14;
	 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],153,53,28,113,68,16;
	 Disp("Gonryun Dungeon",1,3); Pick("gon_dun");
D19: setarray @c[2],176,7,93,20,23,8;
	 Disp("Hidden Dungeon",1,3); Pick("prt_maze");
D20: setarray @c[2],157,14,151,155,149,22,33,158;
	 Disp("Ice Dungeon",1,4); Pick("ice_dun");
D21: setarray @c[2],140,51,53,247,37,63,150,285;
	 Disp("Entrance:Juperos 1:Juperos 2:Core");
	 Pick("","jupe_cave","juperos_01","juperos_02","jupe_core");
D22: setarray @c[2],28,226,41,198;
	 Disp("Kiel Dungeon",1,2); Pick("kh_dun");
D23: setarray @c[2],218,196,282,20,165,38;
	 Disp("The Royal Tomb:Inside the Royal Tomb:Suei Long Gon"); Pick("lou_dun");
D24: setarray @c[2],126,68,47,30;
	 Disp("Magma Dungeon",1,2); Pick("mag_dun");
D25: Restrict("RE");
	 setarray @c[2],33,230;
	 Disp("Malangdo Dungeon",1,1); Pick("mal_dun");
D26: setarray @c[2],189,48,165,30,32,135;
	 Disp("Moscovia Dungeon",1,3); Pick("mosk_dun");
D27: setarray @c[2],61,239,60,271;
	 Disp("Nidhogg's Dungeon",1,2); Pick("nyd_dun");
D28: setarray @c[2],298,167,224,149,266,280;
	 Disp("Odin Temple",1,3); Pick("odin_tem");
D29: setarray @c[2],32,170,21,185;
	 Disp("Orc Dungeon",1,2); Pick("orcsdun");
D30: setarray @c[0],21,183,19,33,19,63,155,159,201,204;
	 Disp("Payon Dungeon",1,5); Pick("pay_dun",1);
D31: Restrict("RE",7,8);
	 setarray @c[2],192,9,10,192,100,92,181,11,94,96,192,8,94,96,192,8;
	 Disp("Pyramids 1:Pyramids 2:Pyramids 3:Pyramids 4:Basement 1:Basement 2:Basement 1 - Nightmare Mode:Basement 2 - Nightmare Mode");
	 Pick("","moc_pryd01","moc_pryd02","moc_pryd03","moc_pryd04","moc_pryd05","moc_pryd06","moc_prydn1","moc_prydn2");
D32: setarray @c[2],140,11,32,21,8,149,204,218,150,9;
	 Disp("Rachel Sanctuary",1,5); Pick("ra_san");
D33: Restrict("RE");
	 setarray @c[2],364,44,101,141;
	 Disp("Scaraba Hole",1,2); Pick("dic_dun");
D34: setarray @c[2],288,9,149,81,210,54,10,222,100,99;
	 Disp("Sphinx",1,5); Pick("","in_sphinx1","in_sphinx2","in_sphinx3","in_sphinx4","in_sphinx5");
D35: setarray @c[2],69,24,102,27;
	 Disp("Sunken Ship",1,2); Pick("treasure");
D36: setarray @c[2],150,39,150,136,220,158,59,143,62,11,89,221,35,166,93,148,29,107,159,138,19,20,130,52;
	 Disp("Thanatos Tower",1,12); Pick("tha_t");
D37: setarray @c[2],21,228,75,205,34,272;
	 Disp("Thor Volcano",1,3); Pick("thor_v");
D38: setarray @c[2],205,15,129,133;
	 Disp("Toy Factory",1,2); Pick("xmas_dun");
D39: setarray @c[2],154,49,148,261,132,189,100,192;
	 Disp("Entrance:Turtle Dungeon 1:Turtle Dungeon 2:Turtle Dungeon 3"); Pick("tur_dun");
D40: Restrict("Pre-RE",1,2);
	 setarray @c[2],42,31,48,30,204,78;
	 Disp("Carpenter's Shop in the Tree:Passage to a Foreign World:Hvergermil's Fountain");
	 Pick("","um_dun01","um_dun02","yggdrasil01");
D41: Restrict("RE");
	 setarray @c[2],57,13,64,88,45,14,26,23;
	 Disp("Bifrost Tower",1,4); Pick("ecl_tdun");

// --------------------------------------------------
	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");

// --------------------------------------------------
	Guild_Dungeons:
// --------------------------------------------------
menu	"Baldur",G1, "Luina",G2, "Valkyrie",G3, "Britoniah",G4,
		"Arunafeltz",G5, "Schwaltzvalt",G6;

G1: Restrict("RE",2,3);
	setarray @c[2],119,93,119,93,120,130;
	Disp("Baldur F1:Baldur F2:Hall of Abyss");
	Pick("","gld_dun01","gld_dun01_2","gld2_pay");
G2: Restrict("RE",2,3);
	setarray @c[2],39,161,39,161,147,155;
	Disp("Luina F1:Luina F2:Hall of Abyss");
	Pick("","gld_dun02","gld_dun02_2","gld2_ald");
G3: Restrict("RE",2,3);
	setarray @c[2],50,44,50,44,140,132;
	Disp("Valkyrie F1:Valkyrie F2:Hall of Abyss");
	Pick("","gld_dun03","gld_dun03_2","gld2_prt");
G4: Restrict("RE",2,3);
	setarray @c[2],116,45,116,45,152,118;
	Disp("Britoniah F1:Britoniah F2:Hall of Abyss");
	Pick("","gld_dun04","gld_dun04_2","gld2_gef");
G5: Go("arug_dun01",199,195);
G6: Go("schg_dun01",200,124);

// --------------------------------------------------
	Instances:
// --------------------------------------------------
menu	"Bakonawa Lake",I1, "Bangungot Hospital 2F",I2, "Buwaya Cave",I3,
		"Endless Tower",I4, "Hazy Forest",I5, "Malangdo Culvert",I6, "Nidhoggur's Nest",I7,
		"Octopus Cave",I8, "Old Glast Heim",I9, "Orc's Memory",I10, "Sealed Shrine",I11,
		"Wolfchev's Laboratory",I12;

I1: Restrict("RE");
	Go("ma_scene01",172,175);
I2: Restrict("RE");
	Go("ma_dun01",151,8);
I3: Restrict("RE");
	Go("ma_fild02",316,317);
I4: Go("e_tower",72,112);
I5: Restrict("RE");
	Go("bif_fild01",161,334);
I6: Restrict("RE");
	Go("mal_in01",164,21);
I7: Go("nyd_dun02",95,193);
I8: Restrict("RE");
	Go("mal_dun01",152,230);
I9: Restrict("RE");
	Go("glast_01",204,268);
I10: Go("gef_fild10",240,198);
I11: Go("monk_test",306,143);
I12: Restrict("RE");
	Go("lhz_dun04",148,269);

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

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

// --------------------------------------------------
//	Duplicates:
// --------------------------------------------------
alb2trea,57,70,6	duplicate(Warper)	Warper#tre	4_F_VALKYRIE
alberta,28,240,4	duplicate(Warper)	Warper#alb	4_F_VALKYRIE
aldebaran,145,118,4	duplicate(Warper)	Warper#alde	4_F_VALKYRIE
amatsu,203,87,4	duplicate(Warper)	Warper#ama	4_F_VALKYRIE
ayothaya,209,169,6	duplicate(Warper)	Warper#ayo	4_F_VALKYRIE
comodo,194,158,4	duplicate(Warper)	Warper#com	4_F_VALKYRIE
einbech,59,38,6	duplicate(Warper)	Warper#einbe	4_F_VALKYRIE
einbroch,69,202,4	duplicate(Warper)	Warper#einbr	4_F_VALKYRIE
gef_fild10,71,339,4	duplicate(Warper)	Warper#orc	4_F_VALKYRIE
geffen,124,72,4	duplicate(Warper)	Warper#gef	4_F_VALKYRIE
glast_01,372,308,4	duplicate(Warper)	Warper#glh	4_F_VALKYRIE
gonryun,162,122,4	duplicate(Warper)	Warper#gon	4_F_VALKYRIE
hugel,101,151,4	duplicate(Warper)	Warper#hug	4_F_VALKYRIE
izlu2dun,110,92,4	duplicate(Warper)	Warper#izd	4_F_VALKYRIE
izlude,134,150,4	duplicate(Warper)	Warper#izl	4_F_VALKYRIE	//Pre-RE: (132,120)
jawaii,253,138,4	duplicate(Warper)	Warper#jaw	4_F_VALKYRIE
lighthalzen,162,102,4	duplicate(Warper)	Warper#lhz	4_F_VALKYRIE
louyang,208,103,6	duplicate(Warper)	Warper#lou	4_F_VALKYRIE
manuk,274,146,6	duplicate(Warper)	Warper#man	4_F_VALKYRIE
mid_camp,216,288,4	duplicate(Warper)	Warper#mid	4_F_VALKYRIE
mjolnir_02,85,364,4	duplicate(Warper)	Warper#mjo	4_F_VALKYRIE
moc_ruins,64,164,4	duplicate(Warper)	Warper#moc	4_F_VALKYRIE
morocc,159,97,4	duplicate(Warper)	Warper#mor	4_F_VALKYRIE
moscovia,229,191,4	duplicate(Warper)	Warper#mos	4_F_VALKYRIE
nameless_n,259,213,4	duplicate(Warper)	Warper#nam	4_F_VALKYRIE
niflheim,205,179,4	duplicate(Warper)	Warper#nif	4_F_VALKYRIE
pay_arche,42,134,4	duplicate(Warper)	Warper#arc	4_F_VALKYRIE
payon,182,108,4	duplicate(Warper)	Warper#pay	4_F_VALKYRIE
prontera,162,185,4	duplicate(Warper)	Warper#prt	4_F_FENRIR
prt_fild05,279,223,6	duplicate(Warper)	Warper#cul	4_F_VALKYRIE
rachel,135,116,4	duplicate(Warper)	Warper#rac	4_F_VALKYRIE
splendide,205,153,4	duplicate(Warper)	Warper#spl	4_F_VALKYRIE
thor_camp,249,76,4	duplicate(Warper)	Warper#thor	4_F_VALKYRIE
umbala,106,150,3	duplicate(Warper)	Warper#umb	4_F_VALKYRIE
veins,214,123,4	duplicate(Warper)	Warper#ve	4_F_VALKYRIE
xmas,150,136,6	duplicate(Warper)	Warper#xmas	4_F_VALKYRIE
yuno,162,47,4	duplicate(Warper)	Warper#yuno	4_F_VALKYRIE

// --------------------------------------------------
//	Duplicates (Renewal):
// --------------------------------------------------
brasilis,201,222,4	duplicate(Warper)	Warper#bra	4_F_VALKYRIE
dewata,204,186,6	duplicate(Warper)	Warper#dew	4_F_VALKYRIE
dicastes01,194,194,6	duplicate(Warper)	Warper#dic	4_F_VALKYRIE
ecl_in01,51,60,4	duplicate(Warper)	Warper#ecl	4_F_VALKYRIE
malangdo,134,117,6	duplicate(Warper)	Warper#mal	4_F_VALKYRIE
malaya,231,204,4	duplicate(Warper)	Warper#ma	4_F_VALKYRIE
mora,57,152,4	duplicate(Warper)	Warper#mora	4_F_VALKYRIE

 

 

:D

Share this post


Link to post
Share on other sites
  • 0

add this function below Restrict function

function VIP {
        // getarg(0) is the level of the vip that can access the map
	if ( getarg(0) > getgmlevel() ) {
	    if (getarg(1,0)) {
            	@vip_block = 0;
            	for (.@i = 1; .@i < getargcount(); .@i++)
            		@vip_block = @vip_block | (1<<getarg(.@i));
            } else {
		    message strcharinfo(PC_NAME),"Only VIP have access in this map.";
		    close;
            }
	}
	return;
}

 

replace function Pick with this

function Pick {
	.@warp_block = @warp_block;
	@warp_block = 0;
	.@vip_block = @vip_block;
	@vip_block = 0;
	.@select = select(@menu$);
	if (getarg(0) == "") {
		.@i = .@select;
		.@map$ = getarg(.@i);
	} else {
		.@i = .@select-getarg(1,0);
		.@map$ = getarg(0)+((.@i<10)?"0":"")+.@i;
	}
	if (.@warp_block & (1<<.@select)) {
		message strcharinfo(PC_NAME),"This map is not enabled in "+(RENEWAL?"":"Pre-")+"Renewal.";
		end;
	}
	if (.@vip_block & (1<<.@select)) {
    		message strcharinfo(PC_NAME),"Only VIP have access in this map.";
    		close;
    }
	.@x = @c[.@i*2];
	.@y = @c[.@i*2+1];
	deletearray @c[0],getarraysize(@c);
	Go(.@map$,.@x,.@y);
}

How to use?

Call the function VIP before the warp function.

 

Example

For town warps:

 

VIP(1) = the number 1 is the level that can access the map

T1: VIP(1);
    Go("prontera",155,183);

For fields and dungeons:

F5: VIP(1,2,9);
    Restrict("Pre-RE",5);
	setarray @c[2],180,178,231,160,191,172,228,194,224,203,190,223,234,177,194,175,172,172;
	Disp("Comodo Field",1,9); Pick("cmd_fild");

As you can see we have 3 argument, ( 1, 2 , 9 )

1 = the number 1 is the level that can access the map

2 = is the second comodo field that have restriction

9 = is the 9th comodo field that have restriction

 

You can add more arguments. VIP(1, 1,2,3... )

 

Hope this will fulfill your request :)

Edited by x13th

Share this post


Link to post
Share on other sites
  • 0

@x13th

 

Awesome my brother!
 
It's exactly what I was looking for!
 
Thank you so much   :thx:
 
@edit
 
But  I put like this
 
 T1: VIP(1); Go("prontera",155,183);

 

And block the player's vip to use too  =S

Edited by DoriTos Nacho

Share this post


Link to post
Share on other sites
  • 0

What kind of VIP system are you using? Can you show me?

 

It's working fine with me

http://upaste.me/9f86360074f715c0e

 

but i guess its in your vip system

 

Of course!

 

My warper: http://upaste.me/52e3360083e6ea5f4

 

My npc Vip: http://upaste.me/59ed3600947eb31d8

 

Sql table for Vip system:

 

/* -------------------- Tabelas SQL ------------------------ */

DROP TABLE IF EXISTS `cash_shop`;
CREATE TABLE `cash_shop` (
  `id` int(11) unsigned not null auto_increment,
  `nameid` int(11) unsigned NOT NULL DEFAULT '0',
  `price` int(11) unsigned NOT NULL DEFAULT '0',
  `type` int(11) unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM;
 
ALTER TABLE `login` ADD `Vip` INT NOT NULL ;

Share this post


Link to post
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.   Restore formatting

  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.

Loading...

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.