From 394e7f8752ae7c80786e202c8b859488db1af363 Mon Sep 17 00:00:00 2001 From: Asheraf Date: Sat, 24 Mar 2018 21:41:05 +0000 Subject: Implementation of Private AirShip --- npc/other/private_airship.txt | 66 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 npc/other/private_airship.txt (limited to 'npc/other') diff --git a/npc/other/private_airship.txt b/npc/other/private_airship.txt new file mode 100644 index 000000000..e650e4b96 --- /dev/null +++ b/npc/other/private_airship.txt @@ -0,0 +1,66 @@ +//================= Hercules Script ======================================= +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2018 Hercules Dev Team +//= Copyright (C) Asheraf +//= +//= Hercules is free software: you can redistribute it and/or modify +//= it under the terms of the GNU General Public License as published by +//= the Free Software Foundation, either version 3 of the License, or +//= (at your option) any later version. +//= +//= This program is distributed in the hope that it will be useful, +//= but WITHOUT ANY WARRANTY; without even the implied warranty of +//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +//= GNU General Public License for more details. +//= +//= You should have received a copy of the GNU General Public License +//= along with this program. If not, see . +//========================================================================= +//= Private AirShip +//========================================================================= + +- script private_airship FAKE_NPC,{ + end; + +S_AirShipIsNeedItem: + for (.@i = 0; .@i < getarraysize(.needitem); ++.@i) { + if (@itemid == .needitem[.@i]) + return true; + } + return false; + +OnAirShipRequest: + if (callsub(S_AirShipIsNeedItem) == false) { + airship_respond(P_AIRSHIP_ITEM_INVALID); + end; + } + if (countitem(@itemid) < 1) { + airship_respond(P_AIRSHIP_ITEM_NOT_ENOUGH); + end; + } + if (getmapflag(strcharinfo(PC_MAP), mf_pairship_startable) != true) { + airship_respond(P_AIRSHIP_INVALID_START_MAP); + end; + } + if (getmapflag(@mapname$, mf_pairship_endable) != true) { + airship_respond(P_AIRSHIP_INVALID_END_MAP); + end; + } + + delitem(@itemid, 1); + warp(@mapname$, 0, 0); + end; + +OnInit: + setarray(.needitem, 6909, 25464); + end; +} -- cgit v1.2.3-60-g2f50