All pastes #676606 Raw Edit

Custom function

public text v1 · immutable
#676606 ·published 2007-08-31 07:09 UTC
rendered paste body
//===== eAthena Script =======================================
//= Global Custom Functions
//===== By: ==================================================
//= Akabane-Kurodo
//===== Current Version: =====================================
//= 1.0
//===== Compatible With: =====================================
//= eAthena 1.0
//===== Description: =========================================
//= <Description>
//===== Additional Comments: =================================
//= 1.0 Ajout des functions pour les warp de castles.
//============================================================

//= Global Warp Guild func
function	script	W_Disallow	{
	mes "Désolé mais les chateaux de " + @town_name$ + " sont fermé aujourd'hui à la woe.";
	mes "Ils seront ouvert le " + @day_woe$ + " pour la Woe de " + @hour_start + "H à " + @hour_stop + "H.";
	mes "Ils restent par contre accéssible hors woe pour investire etc.";
	close;
}

function	script	W_Allow	{
	warp @map_name$,@map_warp_x,@map_warp_y;
	end;
}

//= Alde Guild castle warp func
function	script	Alde_Warp_Func	{
	switch(@Alde_castle) {
		case 1:
			set @map_name$, "aldeg_cas01";
			set @map_warp_x, 34;
			set @map_warp_y, 248;
			break;

		case 2:
			set @map_name$, "aldeg_cas02";
			set @map_warp_x, 88;
			set @map_warp_y, 163;
			break;

		case 3:
			set @map_name$, "aldeg_cas03";
			set @map_warp_x, 114;
			set @map_warp_y, 286;
			break;

		case 4:
			set @map_name$, "aldeg_cas04";
			set @map_warp_x, 149;
			set @map_warp_y, 17;
			break;

		case 5:
			set @map_name$, "aldeg_cas05";
			set @map_warp_x, 216;
			set @map_warp_y, 103;
			break;
	}
	callfunc "Alde_Msg_Set";
	callfunc "Alde_Check";
}

function	script	Alde_Msg_Set	{
	set @town_name$, "Al de Baran";
	set @day_woe$, "Jeudi";
	set @hour_start, 20;
	set @hour_stop, 22;
	return;
}

function	script	Alde_Check	{
	if((gettime(4)==2) && (gettime(3)>=20 && gettime(3)<22)) callfunc "W_Disallow";
	if((gettime(4)==4) && (gettime(3)>=20 && gettime(3)<22)) callfunc "W_Allow";
	if((gettime(4)==6) && (gettime(3)>=21 && gettime(3)<23)) callfunc "W_Disallow";
	if((gettime(4)==0) && (gettime(3)>=16 && gettime(3)<18)) callfunc "W_Disallow";
	callfunc "W_Allow";
}

//= Gef Guild castle warp func
function	script	Gef_Warp_Func	{
	switch(@Gef_castle) {
		case 2:
			set @map_name$, "gefg_cas02";
			set @map_warp_x, 70;
			set @map_warp_y, 143;
			break;

		case 3:
			set @map_name$, "aldeg_cas03";
			set @map_warp_x, 114;
			set @map_warp_y, 286;
			break;

		case 4:
			set @map_name$, "gefg_cas04";
			set @map_warp_x, 24;
			set @map_warp_y, 149;
			break;

		case 5:
			set @map_name$, "aldeg_cas05";
			set @map_warp_x, 216;
			set @map_warp_y, 103;
			break;

		case 11:
			set @map_name$, "gefg_cas01";
			set @map_warp_x, 34;
			set @map_warp_y, 140;
			break;

		case 12:
			set @map_name$, "gefg_cas01";
			set @map_warp_x, 95;
			set @map_warp_y, 178;
			break;

		case 31:
			set @map_name$, "gefg_cas03";
			set @map_warp_x, 60;
			set @map_warp_y, 286;
			break;

		case 32:
			set @map_name$, "gefg_cas03";
			set @map_warp_x, 100;
			set @map_warp_y, 280;
			break;

		case 33:
			set @map_name$, "gefg_cas03";
			set @map_warp_x, 125;
			set @map_warp_y, 250;
			break;

		case 34:
			set @map_name$, "gefg_cas03";
			set @map_warp_x, 89;
			set @map_warp_y, 159;
			break;

		case 51:
			set @map_name$, "gefg_cas05";
			set @map_warp_x, 11;
			set @map_warp_y, 134;
			break;

		case 52:
			set @map_name$, "gefg_cas05";
			set @map_warp_x, 99;
			set @map_warp_y, 200;
			break;

	}
	callfunc "Gef_Msg_Set";
	callfunc "Gef_Check";
}

function	script	Gef_Msg_Set	{
	set @town_name$, "Geffen";
	set @day_woe$, "Dimanche";
	set @hour_start, 16;
	set @hour_stop, 18;
	return;
}

function	script	Gef_Check	{
	if((gettime(4)==2) && (gettime(3)>=20 && gettime(3)<22)) callfunc "W_Disallow";
	if((gettime(4)==4) && (gettime(3)>=20 && gettime(3)<22)) callfunc "W_Disallow";
	if((gettime(4)==6) && (gettime(3)>=21 && gettime(3)<23)) callfunc "W_Disallow";
	if((gettime(4)==0) && (gettime(3)>=16 && gettime(3)<18)) callfunc "W_Allow";
	callfunc "W_Allow";
}

//= Pay Guild castle warp func
function	script	Pay_Warp_Func	{
	switch(@Pay_castle) {
		case 1:
			set @map_name$, "payg_cas01";
			set @map_warp_x, 214;
			set @map_warp_y, 48;
			break;

		case 2:
			set @map_name$, "payg_cas02";
			set @map_warp_x, 272;
			set @map_warp_y, 57;
			break;

		case 3:
			set @map_name$, "payg_cas03";
			set @map_warp_x, 226;
			set @map_warp_y, 26;
			break;

		case 4:
			set @map_name$, "payg_cas04";
			set @map_warp_x, 252;
			set @map_warp_y, 271;
			break;

		case 5:
			set @map_name$, "payg_cas05";
			set @map_warp_x, 62;
			set @map_warp_y, 225;
			break;
	}
	callfunc "Pay_Msg_Set";
	callfunc "Pay_Check";
}

function	script	Pay_Msg_Set	{
	set @town_name$, "Payon";
	set @day_woe$, "Mardi";
	set @hour_start, 20;
	set @hour_stop, 22;
	return;
}

function	script	Pay_Check	{
	if((gettime(4)==2) && (gettime(3)>=20 && gettime(3)<22)) callfunc "W_Disallow";
	if((gettime(4)==4) && (gettime(3)>=20 && gettime(3)<22)) callfunc "W_Disallow";
	if((gettime(4)==6) && (gettime(3)>=21 && gettime(3)<23)) callfunc "W_Disallow";
	if((gettime(4)==0) && (gettime(3)>=16 && gettime(3)<18)) callfunc "W_Allow";
	callfunc "W_Allow";
}

//= Prt Guild castle warp func
function	script	Prt_Warp_Func	{
	switch(@Prt_castle) {
		case 1:
			set @map_name$, "prtg_cas01";
			set @map_warp_x, 99;
			set @map_warp_y, 32;
			break;

		case 2:
			set @map_name$, "prtg_cas02";
			set @map_warp_x, 43;
			set @map_warp_y, 229;
			break;

		case 3:
			set @map_name$, "prtg_cas03";
			set @map_warp_x, 168;
			set @map_warp_y, 12;
			break;

		case 4:
			set @map_name$, "prtg_cas04";
			set @map_warp_x, 86;
			set @map_warp_y, 13;
			break;

		case 5:
			set @map_name$, "prtg_cas05";
			set @map_warp_x, 17;
			set @map_warp_y, 235;
			break;
	}
	callfunc "Prt_Msg_Set";
	callfunc "Prt_Check";
}

function	script	Prt_Msg_Set	{
	set @town_name$, "Prontera";
	set @day_woe$, "Samedi";
	set @hour_start, 21;
	set @hour_stop, 23;
	return;
}

function	script	Prt_Check	{
	if((gettime(4)==2) && (gettime(3)>=20 && gettime(3)<22)) callfunc "W_Disallow";
	if((gettime(4)==4) && (gettime(3)>=20 && gettime(3)<22)) callfunc "W_Disallow";
	if((gettime(4)==6) && (gettime(3)>=21 && gettime(3)<23)) callfunc "W_Disallow";
	if((gettime(4)==0) && (gettime(3)>=16 && gettime(3)<18)) callfunc "W_Allow";
	callfunc "W_Allow";
}