This script will create a DELAY for @go... So, i want to use this to @warp too.
/*=========================================================
@go command
Original concept by jTynne
Revised by Mumbles
===========================================================
Description:
Alternative @go command. Allows for unlimited aliasing, as
well as level and group restrictions for each destination.
Additional options to add a delay, prevent use when dead,
and charge per use are available; default cost is defined
with '.cost', but this parameter can be set manually with
'go()'. These extra features are disabled by default.
Be mindful that the delay uses a temporary player variable,
'@go_delay'; if the player logs out, this variable will be
cleared. If you would like for a more secure delay, replace
all instances of '@go_delay' with 'go_delay'.
===========================================================
Compatibility:
Optimised for Hercules emulators.
===========================================================
Changelog:
v1.0 - First version. [jTynne]
v2.0 - Added additional parameters for locations. [jTynne]
v3.0 - Optimised for Hercules emulators. [Mumbles]
v3.0.1 - Introduced limitless aliasing. [Mumbles]
v3.0.2 - Added go() function. [Mumbles]
v3.1 - Added option to charge per use. [Mumbles]
v3.1.1 - Added option to limit use when dead. [Mumbles]
v3.1.2 - Added option to limit use to towns. [Mumbles]
v3.1.3 - Added changelog. [Mumbles]
=========================================================*/- script at_go -1,{/*-----------------------------------------------------
Configuration
-----------------------------------------------------*/OnInit:.delay =0;// Delay per use, in seconds (default: 0).cost =10000;// Default cost to use command if '.charge' is enabled.charge =0;// Charge to use command? 0 = no, 1 = yes (default: 0).deadlock =0;// Prevent usage when dead? 0 = no, 1 = yes (default: 0).town =0;// Require 'mf_town'? 0 = no, 1 = yes (default: 0)
bindatcmd "go", strnpcinfo(3)+"::OnAtcommand",0,2;
end;/*-----------------------------------------------------
Function: go()
-------------------------------------------------------
Description: Warps player and checks prerequisites.
-------------------------------------------------------
Usage:
go(<"map_name">, <x>, <y>, <level>, <group>, <cost>)
-----------------------------------------------------*/
function go {if(.deadlock &&!Hp){
message strcharinfo(0),"You may not use @go when you are dead.";}elseif(.town &&!getmapflag(strcharinfo(3), mf_town)){
message strcharinfo(0),"You may only use @go in towns.";}elseif(.delay &&@go_delay> gettimetick(2)){
message strcharinfo(0),"You must wait "+(@go_delay- gettimetick(2))+" seconds before warping again.";}elseif(BaseLevel< getarg(3)){
message strcharinfo(0),"You must be at least level "+ getarg(3)+" to warp to this map.";}elseif(getgroupid()< getarg(4)|| getmapflag(getarg(0), mf_nowarp)){
message strcharinfo(0),"You are not authorised to warp to this map.";}elseif(.charge &&Zeny< getarg(5)){
message strcharinfo(0),"You must have at least "+ getarg(5)+" zeny to warp to this map.";}else{if(.delay){@go_delay= gettimetick(2)+.delay;}if(.charge){Zeny-= getarg(5);}
warp getarg(0), getarg(1), getarg(2);
end;}
message strcharinfo(0),"@go failed.";
end;}/*-----------------------------------------------------
Function: alias()
-------------------------------------------------------
Description: Determines if input matches alias.
-------------------------------------------------------
Usage: alias(<"number">, <"name1">{, <"name2">, <...>})
-----------------------------------------------------*/
function alias {for(.@i=0;.@i< getargcount();.@i++){if(@input$== getarg(.@i)){@input$="";returntrue;}}returnfalse;}/*-----------------------------------------------------
Script
-----------------------------------------------------*/OnAtcommand:@input$=.@atcmd_parameters$[0];if(alias("0","pro","pront","prontera")){
go("prontera",156,184,0,0,.cost);}elseif(alias("1","moc","mor","morocc","morroc")){
go("morocc",160,100,0,0,.cost);}elseif(alias("2","gef","geffen")){
go("geffen",120,70,0,0,.cost);}elseif(alias("3","pay","payo","payon")){
go("payon",174,98,0,0,.cost);}elseif(alias("4","alb","alberta")){
go("alberta",192,147,0,0,.cost);}elseif(alias("5","izl","izlude")){
go("izlude",127,109,0,0,.cost);}elseif(alias("6","ald","alde","aldebaran")){
go("aldebaran",140,114,0,0,.cost);}elseif(alias("7","xmas","lutie")){
go("xmas",148,117,0,0,.cost);}elseif(alias("8","com","comodo")){
go("comodo",189,151,0,0,.cost);}elseif(alias("9","juno","yuno")){
go("yuno",157,182,0,0,.cost);}elseif(alias("10","ama","amat","amatsu")){
go("amatsu",115,153,0,0,.cost);}elseif(alias("11","gon","gonr","gonryun")){
go("gonryun",159,116,0,0,.cost);}elseif(alias("12","umb","umbala","umbrella")){
go("umbala",90,154,0,0,.cost);}elseif(alias("13","nif","niflheim")){
go("niflheim",195,175,0,0,.cost);}elseif(alias("14","lou","louyang")){
go("louyang",218,99,0,0,.cost);}elseif(alias("15","nov","ng","novice")){
go("new_1-1",53,111,0,10,.cost);}elseif(alias("16","jail","prison")){
go("sec_pri",23,61,0,10,.cost);}elseif(alias("17","jaw","jawaii")){
go("jawaii",221,221,0,0,.cost);}elseif(alias("18","ayo","ayotaya","ayothaya")){
go("ayothaya",151,165,0,0,.cost);}elseif(alias("19","ein","einbroch")){
go("einbroch",64,200,0,0,.cost);}elseif(alias("20","lhz","light","lighthalzen")){
go("lighthalzen",158,92,0,0,.cost);}elseif(alias("21","einbe","einbech")){
go("einbech",176,125,0,0,.cost);}elseif(alias("22","hug","hugel")){
go("hugel",96,145,0,0,.cost);}elseif(alias("23","rach","rachel")){
go("rachel",130,110,0,0,.cost);}elseif(alias("24","ve","veins")){
go("veins",216,123,0,0,.cost);}elseif(alias("25","mosc","mosk","moscovia")){
go("moscovia",223,184,0,0,.cost);}elseif(alias("26","camp","mid","midgard")){
go("mid_camp",180,240,0,0,.cost);}elseif(alias("27","man","manuk")){
go("manuk",282,138,0,0,.cost);}elseif(alias("28","spl","splend","splendide")){
go("splendide",197,176,0,0,.cost);}elseif(alias("29","br","bra","brasil","brasilis")){
go("brasilis",182,239,0,0,.cost);}elseif(alias("30","el","eldic","dic","dicastes")){
go("dicastes01",198,187,0,0,.cost);}elseif(alias("31","mora")){
go("mora",44,151,0,0,.cost);}elseif(alias("32","dew","dewata")){
go("dewata",200,180,0,0,.cost);}elseif(alias("33","mal","malang","malangdo")){
go("malangdo",140,114,0,0,.cost);}elseif(alias("34","port","malay","malaya")){
go("malaya",242,211,0,0,.cost);}elseif(alias("35","ecl","ecla","eclag","eclage")){
go("eclage",110,39,0,0,.cost);}else{
message strcharinfo(0),"Invalid location number, or name.";
message strcharinfo(0),"Params: <city name|number>";
message strcharinfo(0),"Warps you to a city.";
message strcharinfo(0),"0: Prontera 1: Morroc 2: Geffen 3: Payon 4: Alberta";
message strcharinfo(0),"5: Izlude 6: Al De Baran 7: Lutie 8: Comodo 9: Yuno";
message strcharinfo(0),"10: Amatsu 11: Gonryun 12: Umbala 13: Niflheim 14: Louyang";
message strcharinfo(0),"15: Novice Grounds 16: Prison 17: Jawaii 18: Ayothaya 19: Einbroch";
message strcharinfo(0),"20: Lighthalzen 21: Einbech 22: Hugel 23: Rachel 24: Veins";
message strcharinfo(0),"25: Moscovia 26: Midgard Camp 27: Manuk 28: Splendide 29: Brasilis";
message strcharinfo(0),"30: El Dicastes 31: Mora 32: Dewata 33: Malangdo 34: Malaya";
message strcharinfo(0),"35: Eclage";
message strcharinfo(0),"@go failed.";}
end;}
Question
SuPr3Me MoTF
This script will create a DELAY for @go... So, i want to use this to @warp too.
Link to comment
Share on other sites
0 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.