summaryrefslogtreecommitdiff
path: root/doc/sample
diff options
context:
space:
mode:
Diffstat (limited to 'doc/sample')
-rw-r--r--doc/sample/bank_test.txt80
-rw-r--r--doc/sample/basejob_baseclass_upper.txt18
-rw-r--r--doc/sample/checkoption.txt19
-rw-r--r--doc/sample/delitem2.txt39
-rw-r--r--doc/sample/getequipcardid.txt26
-rw-r--r--doc/sample/getequipid.txt16
-rw-r--r--doc/sample/getiteminfo.txt41
-rw-r--r--doc/sample/getmonsterinfo.txt23
-rw-r--r--doc/sample/gstorage_test.txt36
-rw-r--r--doc/sample/localized_npc.txt148
-rw-r--r--doc/sample/npc_dynamic_shop.txt93
-rw-r--r--doc/sample/npc_extend_shop.txt351
-rw-r--r--doc/sample/npc_live_dialogues.txt53
-rw-r--r--doc/sample/npc_rodex.txt39
-rw-r--r--doc/sample/npc_test_array.txt43
-rw-r--r--doc/sample/npc_test_chat.txt37
-rw-r--r--doc/sample/npc_test_checkweight.txt158
-rw-r--r--doc/sample/npc_test_duplicate.txt33
-rw-r--r--doc/sample/npc_test_func.txt35
-rw-r--r--doc/sample/npc_test_npctimer.txt42
-rw-r--r--doc/sample/npc_test_npctimer2.txt23
-rw-r--r--doc/sample/npc_test_pcre.txt402
-rw-r--r--doc/sample/npc_test_quest.txt52
-rw-r--r--doc/sample/npc_test_setitemx.txt43
-rw-r--r--doc/sample/npc_test_setmapflag.txt32
-rw-r--r--doc/sample/npc_test_skill.txt37
-rw-r--r--doc/sample/npc_test_time.txt25
-rw-r--r--doc/sample/npc_trader_sample.txt66
28 files changed, 0 insertions, 2010 deletions
diff --git a/doc/sample/bank_test.txt b/doc/sample/bank_test.txt
deleted file mode 100644
index 5cdf319ca..000000000
--- a/doc/sample/bank_test.txt
+++ /dev/null
@@ -1,80 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Bank Test
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Contains commands needed for a basic bank.
-//============================================================
-
-prontera,162,188,1 script Bank Test 4_F_KAFRA6,{
- cutin "kafra_06",2;
-
- mes "[Bank Test]";
- mes "Welcome to Prontera's Bank Test.";
- mes "You can only deposit a minimal of";
- mes "1000z. What do you want to do?";
- next;
- switch (select("Deposit","Withdraw","Exit")) {
- case 1:
- mes "[Bank Test]";
- mes "How much do you want to deposit?";
- next;
- input .@kafrabank;
-
- if (.@kafrabank < 1000) {
- mes "[Bank Test]";
- mes "The minimum deposit is 1000z";
- next;
- break;
- }
- if (.@kafrabank > Zeny) {
- mes "[Bank Test]";
- mes "You don't have enough money.";
- next;
- break;
- }
- Zeny -= .@kafrabank;
- #kafrabank += .@kafrabank;
- mes "[Bank Test]";
- mes "You now have ^135445" + Zeny + "z^000000";
- mes "and your bank account ^135445" + #kafrabank + "z^000000";
- next;
- break;
- case 2:
- if (#kafrabank == 0) {
- mes "[Bank Test]";
- mes "Your bank account is currently empty, you can't withdraw.";
- next;
- break;
- }
- mes "[Bank Test]";
- mes "Current balance: ^135445" + #kafrabank + "^000000z";
- mes "How much do you want to withdraw?";
- next;
- input .@kafrabank;
-
- if (.@kafrabank < 1)
- break;
- if (.@kafrabank > #kafrabank) {
- mes "[Bank Test]";
- mes "You can't withdraw more than ^135445"+ #kafrabank + "^000000z.";
- next;
- break;
- }
- #kafrabank -= .@kafrabank;
- Zeny += .@kafrabank;
- mes "[Bank Test]";
- mes "You now have ^135445" + Zeny + "z^000000";
- mes "and your bank account ^135445" + #kafrabank + "z^000000";
- next;
- break;
- case 3:
- break;
- }
-
- mes "Good bye!";
- cutin "kafra_06",255;
- close;
-}
diff --git a/doc/sample/basejob_baseclass_upper.txt b/doc/sample/basejob_baseclass_upper.txt
deleted file mode 100644
index 80cc23fc7..000000000
--- a/doc/sample/basejob_baseclass_upper.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Class Constants
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Outputs the values of class constants.
-//============================================================
-
-prontera,155,177,1 script Tell Me 4_F_JOB_ASSASSIN,{
- mes "[Tell Me]";
- mes "Class: " + Class;
- mes "BaseClass: " + BaseClass;
- mes "BaseJob: " + BaseJob;
- mes "Upper: " + Upper;
- close;
-}
diff --git a/doc/sample/checkoption.txt b/doc/sample/checkoption.txt
deleted file mode 100644
index 77c0a3105..000000000
--- a/doc/sample/checkoption.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Checkoption
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates the 'checkoption' command.
-//============================================================
-
-prontera,156,89,6 script test_checkoption 4_F_KAFRA1,{
- mes "Please enter a value of type!";
- input .@value;
- if(checkoption(.@value) == 1)
- mes "True!";
- else if(checkoption(.@value) == 0)
- mes "False!";
- close;
-}
diff --git a/doc/sample/delitem2.txt b/doc/sample/delitem2.txt
deleted file mode 100644
index 46e3e42c7..000000000
--- a/doc/sample/delitem2.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Delitem2
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates the 'delitem2' command.
-//============================================================
-
-prontera,160,182,5 script Delitem2 1_M_BARD,{
- mes "Item ID?";
- next;
- input .@nameid;
- mes "Amount?";
- next;
- input .@amount;
- mes "Identified? (0:no, 1:yes)";
- next;
- input .@iden;
- mes "Refined how many times?";
- next;
- input .@ref;
- mes "Attribute? (0:normal, 1:broken)";
- next;
- input .@attr;
- mes "4 cards (one after another)...";
- next;
- input .@c1;
- input .@c2;
- input .@c3;
- input .@c4;
- mes "Your command is:";
- mes "delitem2 "+.@nameid+","+.@amount+","+.@iden+","+.@ref+","+.@attr+","+.@c1+","+.@c2+","+.@c3+","+.@c4;
- next;
- delitem2 .@nameid,.@amount,.@iden,.@ref,.@attr,.@c1,.@c2,.@c3,.@c4;
- mes "And here is the moment when your item should disappear! :P";
- close;
-}
diff --git a/doc/sample/getequipcardid.txt b/doc/sample/getequipcardid.txt
deleted file mode 100644
index 8f7d7f27d..000000000
--- a/doc/sample/getequipcardid.txt
+++ /dev/null
@@ -1,26 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Getequipcardid
-//===== By: ==================================================
-//= Lupus
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates the 'getequipcardid' command.
-//============================================================
-
-prontera,155,177,4 script Check My Hat 1_M_SIGNROGUE,{
- mes "Checking your head...";
- if (getequipisequiped(1)) {
- .@id = getequipid(1);
- .@ref = getequiprefinerycnt(1);
- mes "Your hat is... "+getitemname(.@id)+"...";
- if(.@ref)
- mes "It has been refined "+.@ref+" times.";
- mes "Card Slot 0:"+getequipcardid(1,0)+" 1:"+getequipcardid(1,1);
- mes "Card Slot 2:"+getequipcardid(1,2)+" 3:"+getequipcardid(1,3);
- close;
- }
- mes "Nothing?";
- emotion e_hmm;
- close;
-}
diff --git a/doc/sample/getequipid.txt b/doc/sample/getequipid.txt
deleted file mode 100644
index 6543d7932..000000000
--- a/doc/sample/getequipid.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Getequipid
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates the 'getequipid' command.
-//============================================================
-
-prontera,161,181,6 script getequipid Sample 8W_SOLDIER,{
- mes "[GetEquipID Sample]";
- for (.@i = 1; .@i < 11; ++.@i)
- mes "getequipid(" + .@i + ") : " + getequipid(1);
- close;
-}
diff --git a/doc/sample/getiteminfo.txt b/doc/sample/getiteminfo.txt
deleted file mode 100644
index 9d5121635..000000000
--- a/doc/sample/getiteminfo.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Getiteminfo
-//===== By: ==================================================
-//= Lupus
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates the 'getiteminfo' command.
-//============================================================
-
-prontera,156,179,6 script test_getiteminfo 4_F_KAFRA1,{
- mes("Please enter an item ID.");
- input(.@value);
-
- // This line uses an INTERNAL function of your client to show item name by its ID!
- // ^nItemID^XXXX -> Item Name
- mesf("Item ID: %d ^nItemID^%d", .@value, .@value);
-
- mes("Current item info:");
- mesf("Buy Price: %d", getiteminfo(.@value, ITEMINFO_BUYPRICE));
- mesf("Sell Price: %d", getiteminfo(.@value, ITEMINFO_SELLPRICE));
- mesf("Type: %d", getiteminfo(.@value, ITEMINFO_TYPE));
- mesf("Max drop chance: %d.%02d", getiteminfo(.@value, ITEMINFO_MAXCHANCE) / 100, getiteminfo(.@value, ITEMINFO_MAXCHANCE) % 100);
- mesf("Sex: %d", getiteminfo(.@value, ITEMINFO_SEX));
- mesf("Equip location: %d", getiteminfo(.@value, ITEMINFO_LOC));
- mesf("Weight: %d.%d", getiteminfo(.@value, ITEMINFO_WEIGHT) / 10, getiteminfo(.@value, ITEMINFO_WEIGHT) % 10);
- mesf("Attack: %d", getiteminfo(.@value, ITEMINFO_ATK));
- mesf("Defense: %d", getiteminfo(.@value, ITEMINFO_DEF));
- mesf("Range: %d", getiteminfo(.@value, ITEMINFO_RANGE));
- mesf("Slots: %d", getiteminfo(.@value, ITEMINFO_SLOTS));
- mesf("Subtype: %d", getiteminfo(.@value, ITEMINFO_SUBTYPE));
- mesf("Equip Level: %d", getiteminfo(.@value, ITEMINFO_ELV));
- mesf("Weapon Level: %d", getiteminfo(.@value, ITEMINFO_WLV));
- mesf("View ID: %d", getiteminfo(.@value, ITEMINFO_VIEWID));
- mesf("MATK: %d", getiteminfo(.@value, ITEMINFO_MATK));
- mesf("View Sprite: %d", getiteminfo(.@value, ITEMINFO_VIEWSPRITE));
-
- .@trade$ = callfunc("F_GetTradeRestriction", .@value);
- mesf("Trade Restriction: %s", .@trade$);
- close;
-}
diff --git a/doc/sample/getmonsterinfo.txt b/doc/sample/getmonsterinfo.txt
deleted file mode 100644
index 064f1fc71..000000000
--- a/doc/sample/getmonsterinfo.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Getmonsterinfo
-//===== By: ==================================================
-//= Lupus
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates the 'getmonsterinfo' command.
-//============================================================
-
-prontera,156,179,6 script test_getmonsterinfo 4_F_KAFRA1,{
- mes "Please enter a monster ID.";
- input .@value;
- if(getmonsterinfo(.@value,MOB_LV)<0 || getmonsterinfo(.@value,MOB_NAME)=="Dummy") {
- mes "Invalid monster ID.";
- close;
- }
- mes "Monster ID: "+.@value+" '"+getmonsterinfo(.@value,MOB_NAME)+"'";
- mes "Current Monster info:";
- for (.@id = 0; .@id < 23; ++.@id)
- mes " getmonsterinfo("+.@value+","+@id+") = "+getmonsterinfo(.@value,@id);
- close;
-}
diff --git a/doc/sample/gstorage_test.txt b/doc/sample/gstorage_test.txt
deleted file mode 100644
index 8b1a1c0e6..000000000
--- a/doc/sample/gstorage_test.txt
+++ /dev/null
@@ -1,36 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Guild Storage Test
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Contains commands needed for a guild warehouse NPC.
-//============================================================
-
-prontera,165,188,4 script Guild Warehouse 4_F_KAFRA6,{
- cutin "kafra_06",2;
-
- mes "[Guild Warehouse Coupler]";
- mes "This is the guild warehouse coupler service.";
- mes "You will not receive zeny for this is a test.";
- next;
- if (select("Access Guild Warehouse","Exit") != 1) {
- mes "[Guild Warehouser]";
- mes "Come back whenever you want.";
- cutin "kafra_06", 255;
- close;
- }
-
- .@flag = guildopenstorage;
- if (.@flag == 1) {
- mes "[Guild Warehouse]";
- mes "The guild warehouse is being used right now.";
- mes "Please wait a while, then come back.";
- } else if(.@flag == 2) {
- mes "[Guild Warehouse]";
- mes "You can't use this service if you're not in a guild!";
- }
- cutin "kafra_06",255;
- close;
-}
diff --git a/doc/sample/localized_npc.txt b/doc/sample/localized_npc.txt
deleted file mode 100644
index 82a08fa35..000000000
--- a/doc/sample/localized_npc.txt
+++ /dev/null
@@ -1,148 +0,0 @@
-//===== Hercules Script ======================================
-//= Sample localized NPC
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= v1.1
-//===== Description: =========================================
-//= Example of a localized NPC.
-//=
-//= There are many ways to do it, this is just one option.
-//= The player has a global account variable ##_langid_ that
-//= identifies the it's language.
-//=
-//= The default language should always have langid 0.
-//= When a message isn't found for the player's langid
-//= (strlen = 0), the message from langid 0 is used instead.
-//=
-//= Each message is identified by a string that must only
-//= contain valid variable name characters.
-//=
-//= void setlang(int langid)
-//= - sets the player's language
-//= int getlang(void)
-//= - returns the player's language
-//= void setmes2(string name,int langid,string text)
-//= - sets the localized text for name
-//= string getmes2(string name,int langid)
-//= - returns the localized text of name
-//= void mes2(string name)
-//= - displays the localized text of name
-//=
-//===== Additional Comments: =================================
-//= To use this globally, just put the functions in Global_Functions.txt
-//============================================================
-
-//////////////////////////////////////////////////////////////
-/// Sets the language of the player account.
-/// @param langid Languange identifier (0 for default)
-function script setlang {
- ##_langid_ = getarg(0);
- return;
-}
-
-//////////////////////////////////////////////////////////////
-/// Returns the language identifier of the player
-function script getlang {
- return ##_langid_;
-}
-
-//////////////////////////////////////////////////////////////
-/// Sets a localized text entry.
-/// Does not need a RID attached.
-/// @param name Message identifier
-/// @param langid Language identifier (0 for default)
-/// @param text Text message
-function script setmes2 {
- .@mes2_name$ = getarg(0);
- .@mes2_langid = getarg(1);
- .@mes2_text$ = getarg(2);
- .@mes2_var$ = "$@__"+ .@mes2_name$ +"_"+ .@mes2_langid +"$";
-
- //debugmes "setmes2 \""+ .@mes2_var$ +"\", \""+ .@mes2_text$ +"\";";
-
- // set the localized text
- setd .@mes2_var$, .@mes2_text$;
- return;
-}
-
-//////////////////////////////////////////////////////////////
-/// Sets a localized text entry.
-/// Does not need a RID attached.
-/// @param name Message identifier
-/// @param langid Language identifier (0 for default)
-/// @return Text message
-function script getmes2 {
- .@mes2_name$ = getarg(0);
- .@mes2_langid = getarg(1);
- .@mes2_var$ = "$@__"+ .@mes2_name$ +"_"+ .@mes2_langid +"$";
- .@mes2_text$ = getd(.@mes2_var$);
-
- //debugmes "getmes2(\""+ .@mes2_var$ +"\")=\""+ .@mes2_text$ +"\"";
-
- return .@mes2_text$;
-}
-
-//////////////////////////////////////////////////////////////
-/// mes for localized text.
-/// index should be a unique string, made up only of characters
-/// that are valis as a variable name
-/// @param index Message identifier
-function script mes2 {
- .@mes2_index$ = getarg(0);
-
- if( getstrlen(.@mes2_index$) == 0 )
- return; // invalid index
-
- // print localized text
- .@mes2_text$ = callfunc("getmes2",.@mes2_index$,##_langid_);
- if( getstrlen(.@mes2_text$) == 0 ) {
- if( ##_langid_ != 0 ) {
- // revert to default language
- .@mes2_text$ = callfunc("getmes2",.@mes2_index$,0);
- if( getstrlen(.@mes2_text$) != 0 )
- mes .@mes2_text$; // default text
- }
- } else
- mes .@mes2_text$; // localized text
- return;
-}
-
-//////////////////////////////////////////////////////////////
-/// Sample localized NPC
-prontera,155,183,4 script LocalizedNPC 4_M_GEF_SOLDIER,{
- // Get text for specific languages
- .@menu1$ = callfunc("getmes2","LNPC_lang",0);
- .@menu2$ = callfunc("getmes2","LNPC_lang",1);
- do {
- // get text that fallbacks to language 0
- callfunc "mes2", "LNPC_name";
- // localized mes
- callfunc "mes2", "LNPC_lang";
- callfunc "mes2", "LNPC_text";
- next;
-
- switch(select(.@menu1$,.@menu2$,"Cancel"))
- {
- case 1:
- case 2:
- // Set player language
- callfunc "setlang",@menu-1;
- break;
- }
- } while( @menu != 3 );
- close;
- end;
-
-OnInterIfInitOnce:
- // Load the localized text.
- // This can be anywhere, as long as it's executed before the coresponding getmes2/mes2 calls
- // 0 - English (default)
- // 1 - Portuguese
- callfunc "setmes2", "LNPC_name", 0, "[LocalizedNPC]";
- callfunc "setmes2", "LNPC_lang", 0, "EN";
- callfunc "setmes2", "LNPC_lang", 1, "PT";
- callfunc "setmes2", "LNPC_text", 0, "Something in english";
- callfunc "setmes2", "LNPC_text", 1, "Algo em português";
- end;
-}
diff --git a/doc/sample/npc_dynamic_shop.txt b/doc/sample/npc_dynamic_shop.txt
deleted file mode 100644
index 9b1315ba7..000000000
--- a/doc/sample/npc_dynamic_shop.txt
+++ /dev/null
@@ -1,93 +0,0 @@
-//===== Hercules Script ======================================
-//= Sample: Dynamic Shop
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Contains commands needed for a dynamic shop.
-//============================================================
-
-// Dummy shop to insert items into:
-- shop dyn_shop1 FAKE_NPC,501:50.
-
-prontera,181,200,4 script Dynamic Shop 2_F_MAGICMASTER,{
- callshop "dyn_shop1",0;
- npcshopattach "dyn_shop1";
- end;
-
-OnSellItem:
- for (.@i = 0; .@i < getarraysize(@sold_nameid); ++.@i) {
- if(countitem(@sold_nameid[.@i]) < @sold_quantity[.@i] || @sold_quantity[.@i] <= 0) {
- mes "omgh4x!";
- close;
- } else if (@sold_nameid[.@i] == Red_Potion) {
- delitem Red_Potion, @sold_quantity[.@i];
- $@rpotsleft += @sold_quantity[.@i];
- Zeny += @sold_quantity[.@i]*20;
- } else if (@sold_nameid[.@i] == Orange_Potion){
- delitem Orange_Potion, @sold_quantity[.@i];
- $@opotsleft += @sold_quantity[.@i];
- Zeny += @sold_quantity[.@i]*100;
- } else {
- mes "Sorry, I don't need your items.";
- close;
- }
- }
- deletearray @sold_quantity, getarraysize(@sold_quantity);
- deletearray @sold_nameid, getarraysize(@sold_nameid);
- mes "Deal completed.";
- close;
-
-OnBuyItem:
- for (.@i = 0; .@i < getarraysize(@bought_nameid); ++.@i) {
- if (@bought_quantity[.@i] <= 0) {
- mes "omgh4x!";
- close;
- } else if (@bought_nameid[.@i] == Red_Potion) {
- if (@bought_quantity[.@i] > $@rpotsleft) {
- if($@rpotsleft > 0) {
- @bought_quantity[.@i] = $@rpotsleft;
- } else {
- mes "We are out of red potions!";
- close;
- }
- }
- if(Zeny >= 40*@bought_quantity[.@i]) {
- Zeny -= 40*@bought_quantity[.@i];
- getitem Red_Potion, @bought_quantity[.@i];
- $@rpotsleft -= @bought_quantity[.@i];
- } else {
- mes "You have insufficient cash.";
- close;
- }
- } else /*if (@bought_nameid[.@i] == Orange_Potion)*/ {
- if(@bought_quantity[.@i] > $@opotsleft) {
- if($@opotsleft > 0) {
- @bought_quantity[.@i] = $@opotsleft;
- } else {
- mes "We are out of orange potions!";
- close;
- }
- }
- if(Zeny >= 200*@bought_quantity[.@i]) {
- Zeny -= 200*@bought_quantity[.@i];
- getitem Orange_Potion, @bought_quantity[.@i];
- $@opotsleft -= @bought_quantity[.@i];
- } else {
- mes "You have insufficient cash.";
- close;
- }
- }
- }
- deletearray @bought_quantity, getarraysize(@bought_quantity);
- deletearray @bought_nameid, getarraysize(@bought_nameid);
- mes "Trade done.";
- close;
-
-OnInit:
- npcshopitem "dyn_shop1", Red_Potion, 40, Orange_Potion, 200;
- $@rpotsleft = 10;
- $@opotsleft = 10;
- end;
-}
diff --git a/doc/sample/npc_extend_shop.txt b/doc/sample/npc_extend_shop.txt
deleted file mode 100644
index 31ed0af43..000000000
--- a/doc/sample/npc_extend_shop.txt
+++ /dev/null
@@ -1,351 +0,0 @@
-//===== Hercules Script ======================================
-//= Sample: Extended Shops
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= An example of shop NPCs.
-//============================================================
-
-prontera,182,213,3 trader Super Novice Shop 4_M_KID2,{
-OnInit:
- sellitem Novice_Knife;
- sellitem Novice_Guard;
- sellitem Novice_Breast;
- sellitem Novice_Plate;
- sellitem Novice_Boots;
- sellitem Novice_Hood;
- sellitem Novice_Armlet;
- sellitem Novice_Egg_Cap;
-}
-prontera,149,139,5 trader Whips Merchant 1_M_MERCHANT,{
-OnInit:
- sellitem Rope_;
- sellitem Line_;
- sellitem Wire_;
- sellitem Rante_;
- sellitem Tail_;
- sellitem Whip_;
- sellitem Lariat;
- sellitem Rapture_Rose;
- sellitem Chemeti;
-}
-prontera,162,175,3 trader Headgears Merchant 1 1_F_MERCHANT_01,{
-OnInit:
- sellitem Ribbon_;
- sellitem Hair_Band;
- sellitem Bandana;
- sellitem Hat_;
- sellitem Turban_;
- sellitem Biretta_;
- sellitem Cap_;
- sellitem Gemmed_Sallet_;
- sellitem Goggle_;
- sellitem Helm_;
-}
-prontera,162,172,3 trader Headgears Merchant 2 1_F_MERCHANT_01,{
-OnInit:
- sellitem Glasses;
- sellitem Eye_Bandage;
- sellitem Flu_Mask;
- sellitem One_Eyed_Glass;
- sellitem Granpa_Beard;
- sellitem Luxury_Sunglasses;
- sellitem Spinning_Eyes;
- sellitem Gangster_Patch;
- sellitem Ganster_Mask;
- sellitem Eagle_Eyes;
- sellitem Mr_Scream;
- sellitem Masquerade;
- sellitem Goblini_Mask;
-}
-prontera,162,169,3 trader Armours Merchant 1_F_MERCHANT_01,{
-OnInit:
- sellitem Mink_Coat;
- sellitem Padded_Armor_;
- sellitem Chain_Mail_;
- sellitem Plate_Armor_;
- sellitem Clothes_Of_The_Lord;
- sellitem Formal_Suit;
- sellitem Silk_Robe_;
- sellitem Scapulare_;
- sellitem Saint_Robe_;
- sellitem Holy_Robe;
- sellitem Wooden_Mail_;
- sellitem Tights_;
- sellitem Mage_Coat;
- sellitem Thief_Clothes_;
- sellitem Ninja_Suit;
- sellitem Full_Plate_Armor_;
-}
-prontera,162,166,3 trader Shields Merchant 1_F_MERCHANT_01,{
-OnInit:
- sellitem Guard_;
- sellitem Buckler_;
- sellitem Shield_;
- sellitem Mirror_Shield_;
- sellitem Memorize_Book;
- sellitem Holy_Guard;
- sellitem Herald_Of_GOD;
-}
-prontera,162,163,3 trader Boots Merchant 1_F_MERCHANT_01,{
-OnInit:
- sellitem Sandals_;
- sellitem Shoes_;
- sellitem Boots_;
- sellitem Chrystal_Pumps;
- sellitem Grave_;
- sellitem Safty_Boots;
-}
-prontera,162,160,3 trader Robes Merchant 1_F_MERCHANT_01,{
-OnInit:
- sellitem Hood_;
- sellitem Muffler_;
- sellitem Manteau_;
- sellitem Cape_Of_Ancient_Lord;
- sellitem Ragamuffin_Cape;
- sellitem Clack_Of_Servival;
-}
-prontera,162,157,3 trader Accessory Merchant 1_F_MERCHANT_01,{
-OnInit:
- sellitem Ring;
- sellitem Earring;
- sellitem Necklace;
- sellitem Glove;
- sellitem Brooch;
- sellitem Clip;
- sellitem Rosary;
- sellitem Safety_Ring;
- sellitem Critical_Ring;
- sellitem Matyr's_Flea_Guard;
- sellitem Thimble_Of_Archer;
-}
-prontera,162,154,3 trader Arrows Merchant 1_F_MERCHANT_01,{
-OnInit:
- sellitem Arrow;
- sellitem Silver_Arrow;
- sellitem Fire_Arrow;
- sellitem Steel_Arrow;
- sellitem Crystal_Arrow;
- sellitem Arrow_Of_Wind;
- sellitem Stone_Arrow;
- sellitem Immatrial_Arrow;
- sellitem Stun_Arrow;
- sellitem Freezing_Arrow;
- sellitem Flash_Arrow;
- sellitem Curse_Arrow;
- sellitem Rusty_Arrow;
- sellitem Poison_Arrow;
- sellitem Incisive_Arrow;
- sellitem Oridecon_Arrow;
- sellitem Arrow_Of_Counter_Evil;
- sellitem Arrow_Of_Shadow;
- sellitem Sleep_Arrow;
- sellitem Silence_Arrow;
-}
-prontera,162,151,3 trader Alchemist Shop 1_F_MERCHANT_01,{
-OnInit:
- sellitem Alcol_Create_Book;
- sellitem FireBottle_Create_Book;
- sellitem Acid_Create_Book;
- sellitem Plant_Create_Book;
- sellitem Mine_Create_Book;
- sellitem Coating_Create_Book;
- sellitem Slim_Potion_Create_Book;
- sellitem Normal_Potion_Book;
- sellitem Medicine_Bowl;
- sellitem Empty_Potion;
-}
-prontera,162,148,3 trader Taming Merchant 1_F_MERCHANT_01,{
-OnInit:
- sellitem Unripe_Apple;
- sellitem Orange_Juice;
- sellitem Bitter_Herb;
- sellitem Rainbow_Carrot;
- sellitem Earthworm_The_Dude;
- sellitem Rotten_Fish;
- sellitem Lusty_Iron;
- sellitem Monster_Juice;
- sellitem Sweet_Milk;
- sellitem Well_Dried_Bone;
- sellitem Singing_Flower;
- sellitem Dew_Laden_Moss;
- sellitem Deadly_Noxious_Herb;
- sellitem Fatty_Chubby_Earthworm;
- sellitem Baked_Yam;
- sellitem Tropical_Banana;
- sellitem Horror_Of_Tribe;
- sellitem No_Recipient;
- sellitem Old_Broom;
- sellitem Silver_Knife_Of_Chaste;
- sellitem Armlet_Of_Obedience;
- sellitem Shining_Stone;
- sellitem Contracts_In_Shadow;
- sellitem Book_Of_Devil;
- sellitem Heart_Of_Her;
-}
-prontera,162,145,3 trader Pet Equipment 1_F_MERCHANT_01,{
-OnInit:
- sellitem Skull_Helm;
- sellitem Monster_Oxygen_Mask;
- sellitem Transparent_Headgear;
- sellitem Pacifier;
- sellitem Wig;
- sellitem Queen's_Hair_Ornament;
- sellitem Silk_Ribbon;
- sellitem Punisher;
- sellitem Wild_Flower;
- sellitem Battered_Pot;
- sellitem Stellar_Hairpin;
- sellitem Tiny_Egg_Shell;
- sellitem Backpack;
- sellitem Rocker_Glasses;
- sellitem Green_Lace;
- sellitem Golden_Bell;
- sellitem Bark_Shorts;
- sellitem Monkey_Circlet;
- sellitem Red_Muffler;
- sellitem Sword_Of_Grave_Keeper;
-}
-prontera,148,234,5 trader Weapon Card Merchant 1_F_PUBGIRL,{
-OnInit:
- sellitem Drops_Card, 100000;
- sellitem Andre_Larva_Card, 100000;
- sellitem Skeleton_Card, 100000;
- sellitem Thief_Bug_Female_Card, 100000;
- sellitem Hornet_Card, 100000;
- sellitem Wolf_Card, 100000;
- sellitem Andre_Card, 100000;
- sellitem Savage_Babe_Card, 100000;
- sellitem Farmiliar_Card, 100000;
- sellitem Plankton_Card, 100000;
- sellitem Snake_Card, 100000;
- sellitem Marina_Card, 100000;
- sellitem Metaller_Card, 100000;
- sellitem Magnolia_Card, 100000;
- sellitem Zenorc_Card, 100000;
- sellitem Requiem_Card, 100000;
- sellitem Mandragora_Card, 100000;
- sellitem Vadon_Card, 100000;
- sellitem Anacondaq_Card, 100000;
- sellitem Drainliar_Card, 100000;
- sellitem Orc_Skeleton_Card, 100000;
- sellitem Pecopeco_Egg_Card, 100000;
- sellitem Goblin_Card, 100000;
- sellitem Caramel_Card, 100000;
- sellitem Scorpion_Card, 100000;
- sellitem Flora_Card, 100000;
- sellitem Archer_Skeleton_Card, 100000;
- sellitem Strouf_Card, 100000;
- sellitem Petit_Card, 100000;
- sellitem Desert_Wolf_Card, 20700;
- sellitem Skel_Worker_Card, 100000;
- sellitem Minorous_Card, 100000;
- sellitem Golem_Card, 100000;
- sellitem Hunter_Fly_Card, 100000;
- sellitem Hydra_Card, 100000;
- sellitem Soldier_Skeleton_Card, 100000;
- sellitem Mummy_Card, 100000;
- sellitem Side_Winder_Card, 100000;
- sellitem Deviace_Card, 100000;
-}
-prontera,148,231,5 trader Headgear Card Merchant 1_F_PUBGIRL,{
-OnInit:
- sellitem Wilow_Card, 100000;
- sellitem Stainer_Card, 100000;
- sellitem Martin_Card, 100000;
- sellitem Elder_Wilow_Card, 100000;
- sellitem Giearth_Card, 100000;
- sellitem Ghoul_Card, 100000;
- sellitem Marduk_Card, 100000;
- sellitem Deviruchi_Card, 100000;
- sellitem Nightmare_Card, 100000;
-}
-prontera,146,229,5 trader Armor Card Merchant 1_F_PUBGIRL,{
-OnInit:
- sellitem Pupa_Card, 100000;
- sellitem Picky_Card, 100000;
- sellitem Picky__Card, 100000;
- sellitem Roda_Frog_Card, 100000;
- sellitem Thief_Bug_Card, 100000;
- sellitem Rocker_Card, 100000;
- sellitem Desert_Wolf_Babe_Card, 100000;
- sellitem Pecopeco_Card, 100000;
- sellitem Savage_Card, 100000;
- sellitem Sword_Fish_Card, 100000;
- sellitem Dokebi_Card, 100000;
- sellitem Pasana_Card, 100000;
- sellitem Sand_Man_Card, 100000;
- sellitem Argiope_Card, 100000;
- sellitem Bathory_Card, 100000;
- sellitem Evil_Druid_Card, 100000;
- sellitem Cornutus_Card, 100000;
- sellitem Marc_Card, 100000;
-}
-prontera,144,227,5 trader Shield Card Merchant 1_F_PUBGIRL,{
-OnInit:
- sellitem Andre_Egg_Card, 100000;
- sellitem Ambernite_Card, 100000;
- sellitem Thara_Frog_Card, 100000;
- sellitem Soldier_Andre_Card, 100000;
- sellitem Orc_Warrior_Card, 100000;
- sellitem BigFoot_Card, 100000;
- sellitem Rafflesia_Card, 100000;
- sellitem Petit__Card, 100000;
- sellitem Medusa_Card, 100000;
- sellitem Khalitzburg_Card, 100000;
- sellitem Anubis_Card, 100000;
- sellitem Horn_Card, 100000;
- sellitem Megalodon_Card, 100000;
- sellitem Argos_Card, 100000;
- sellitem Munak_Card, 100000;
-}
-prontera,142,225,5 trader Robe Card Merchant 1_F_PUBGIRL,{
-OnInit:
- sellitem Dustiness_Card, 100000;
- sellitem Orc_Zombie_Card, 100000;
- sellitem Hode_Card, 100000;
- sellitem Marse_Card, 100000;
- sellitem Myst_Card, 100000;
- sellitem Jakk_Card, 100000;
- sellitem Marionette_Card, 100000;
- sellitem Isis_Card, 100000;
- sellitem Daydric_Card, 100000;
- sellitem Condor_Card, 100000;
- sellitem Frilldora_Card, 100000;
- sellitem Whisper_Card, 100000;
- sellitem Baphomet__Card, 100000;
-}
-prontera,140,223,5 trader Shoes Card Merchant 1_F_PUBGIRL,{
-OnInit:
- sellitem Chonchon_Card, 100000;
- sellitem Zombie_Card, 100000;
- sellitem Thief_Bug_Male_Card, 100000;
- sellitem Eggyra_Card, 100000;
- sellitem Matyr_Card, 100000;
- sellitem Sohee_Card, 100000;
- sellitem Verit_Card, 100000;
-}
-prontera,138,221,5 trader Accessory Card Merchant 1_F_PUBGIRL,{
-OnInit:
- sellitem Spore_Card, 100500;
- sellitem Kukre_Card, 100500;
- sellitem Tarou_Card, 100500;
- sellitem Worm_Tail_Card, 100500;
- sellitem Yoyo_Card, 100500;
- sellitem Zerom_Card, 100500;
- sellitem Kobold_Card, 100500;
- sellitem Mantis_Card, 100500;
- sellitem Poporing_Card, 100500;
- sellitem Creamy_Card, 100500;
- sellitem Smokie_Card, 100500;
- sellitem Poison_Spore_Card, 100500;
- sellitem Vitata_Card, 100500;
- sellitem Pirate_Skel_Card, 100500;
- sellitem Phen_Card, 100500;
- sellitem Marine_Sphere_Card, 100500;
- sellitem Obeaune_Card, 100500;
- sellitem Horong_Card, 100500;
- sellitem Joker_Card, 100500;
-}
diff --git a/doc/sample/npc_live_dialogues.txt b/doc/sample/npc_live_dialogues.txt
deleted file mode 100644
index 9ce628c30..000000000
--- a/doc/sample/npc_live_dialogues.txt
+++ /dev/null
@@ -1,53 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Live Dialogue
-//===== By: ==================================================
-//= Lupus
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= An example of an NPC with live dialogue.
-//= Note: This relies on Global_Functions.txt to run.
-//============================================================
-
-prontera,167,177,5 script Luppy DESERT_WOLF_B,{
- mes "[Luppy]";
-
- // Say a random greeting from Global_Functions.txt
- mes callfunc("F_Hi");
-
- // Say a compliment according to player's gender
- // 1st string is for FEMALE, 2nd for MALE
- mes callfunc("F_Sex","What a beautiful lady!","What a handsome man!");
-
- // Add some random greeting and goodbye into the menu
- if (select(callfunc("F_Hi"), callfunc("F_Bye")) != 1) {
- mes "[Luppy]";
- // Add some random goodbye from Global_Functions.txt
- mes callfunc("F_Bye");
- close;
- }
-
- mes "[Luppy]";
- // Give a random prize from set list of items
- if (@gotstuff) {
- // Again, say stuff according to player's gender
- mes "I like "+callfunc("F_Sex","smiling ladies!","bloody pirates!");
-
- // Show one of 3 emotion from the list (we added ,1 to show emotion over PLAYER's head)
- emotion callfunc("F_RandMes", 3, e_scissors, e_kis, e_pat), 1;
- close;
- }
-
- // We set a temp var to give present just once. Player can get more by relogging.
- @gotstuff = 1;
-
- // Get item ID from the list of presents: Apple, Mastela Fruit, Yggdrasil Seed or Orange Juice
- .@itemIDfromList = callfunc("F_RandMes", 4, Apple, Fruit_Of_Mastela, Seed_Of_Yggdrasil, Orange_Juice);
-
- // Again, say stuff according to player's gender
- mes "Hey, "+callfunc("F_Sex","sister!","brother!")+" I have "+getitemname(.@itemIDfromList)+" for you!";
-
- // Get the item from the list
- getitem .@itemIDfromList, 1;
- close;
-}
diff --git a/doc/sample/npc_rodex.txt b/doc/sample/npc_rodex.txt
deleted file mode 100644
index 0975e609c..000000000
--- a/doc/sample/npc_rodex.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: RoDEX Send Mail
-//===== By: ==================================================
-//= KirieZ
-//===== Current Version: =====================================
-//= 20170322
-//===== Description: =========================================
-//= Demonstrates sending mails through RoDEX.
-//============================================================
-
-prontera,150,150,4 script Rodex Mail 1_M_01,{
- // Sends a messsage to attached player from "Rodex Test", with title "Rodex Test1",
- // with message "Hello World, How are You?", 1000 Zenies and 5 Red Potions attached
- rodex_sendmail(
- getcharid(CHAR_ID_CHAR), "Rodex Test", "Rodex Test1", "Hello World, How are You?",
- 1000,
- Red_Potion, 5
- );
-
- // Sends a messsage to attached player "Account Box" from "Rodex Test", with title "Rodex Test3",
- // with message "Hello World, How are You?", 1000 Zenies and 5 Red Potions attached
- rodex_sendmail_acc(
- getcharid(CHAR_ID_ACCOUNT), "Rodex Test", "Rodex Test3", "Hello World, How are You?",
- 1000,
- Red_Potion, 5
- );
-
- // Sends a messsage to attached player from "Rodex Test", with title "Rodex Test6",
- // with message "Hello World, How are You?", 1000 Zenies, 5 Red Potions and
- // 1 +10 Knife[3] with 3 Poring Cards (Broken)
- rodex_sendmail2(
- getcharid(CHAR_ID_CHAR), "Rodex Test", "Rodex Test6", "Hello World, How are You?",
- 1000,
- Red_Potion, 5, 0, 0, 0, 0, 0, 0,
- Knife, 1, 10, 1, Poring_Card, Poring_Card, Poring_Card, 0
- );
-
- end;
-}
diff --git a/doc/sample/npc_test_array.txt b/doc/sample/npc_test_array.txt
deleted file mode 100644
index a429ffb93..000000000
--- a/doc/sample/npc_test_array.txt
+++ /dev/null
@@ -1,43 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Array Test
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates array commands.
-//============================================================
-
-prontera,164,190,1 script Array Test 4_F_KAFRA6,{
- .@hoge[0] = 1;
- .@hoge[1] = 5;
- mes "Please enter a value for hoge[2].";
- next;
- input .@hoge[2];
- mes "hoge => " + .@hoge;
- mes "hoge[0]=> " + .@hoge[0];
- mes "hoge[1]=> " + .@hoge[1];
- mes "hoge[2]=> " + .@hoge[2];
- next;
- setarray .@hoge[1],2,3,4,5;
- mes "true: 5,1,2,3,4";
- mes "hoge size = "+ getarraysize(.@hoge);
- mes "hoge[0]=> " + .@hoge[0];
- mes "hoge[1]=> " + .@hoge[1];
- mes "hoge[2]=> " + .@hoge[2];
- mes "hoge[3]=> " + .@hoge[3];
- next;
- copyarray .@fuga[0],.@hoge[2],2;
- mes "true: 3,4,0";
- mes "fuga[0]=> " + .@fuga[0];
- mes "fuga[1]=> " + .@fuga[1];
- mes "fuga[2]=> " + .@fuga[2];
- next;
- deletearray .@hoge[1],2;
- mes "true: 1,4,5,0";
- mes "hoge[0]=> " + .@hoge[0];
- mes "hoge[1]=> " + .@hoge[1];
- mes "hoge[2]=> " + .@hoge[2];
- mes "hoge[3]=> " + .@hoge[3];
- close;
-}
diff --git a/doc/sample/npc_test_chat.txt b/doc/sample/npc_test_chat.txt
deleted file mode 100644
index adc53c763..000000000
--- a/doc/sample/npc_test_chat.txt
+++ /dev/null
@@ -1,37 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Chat Test
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20121003
-//===== Description: =========================================
-//= Demonstrates waitingroom commands.
-//============================================================
-
-prontera,158,182,0 script Chat Test::test0001 4_F_KAFRA2,{
- mes "Trigger Number: " + getwaitingroomstate(2);
- mes "Trigger State: " + getwaitingroomstate(3);
- switch(select("Enable:Disable:Delete:Create")) {
- case 1:
- enablewaitingroomevent;
- close;
- case 2:
- disablewaitingroomevent;
- close;
- case 3:
- delwaitingroom;
- close;
- case 4:
- waitingroom "Test",15,"test0001::OnChatEvent",1;
- close;
- }
-
-OnInit:
- waitingroom "Test",15,"test0001::OnChatEvent",1;
- end;
-
-OnChatEvent:
- disablewaitingroomevent;
- warpwaitingpc "prontera",160,180;
- end;
-}
diff --git a/doc/sample/npc_test_checkweight.txt b/doc/sample/npc_test_checkweight.txt
deleted file mode 100644
index 0f383ffe4..000000000
--- a/doc/sample/npc_test_checkweight.txt
+++ /dev/null
@@ -1,158 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: CheckWeight
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates 'checkweight' command.
-//============================================================
-
-prontera,161,181,6 script ChkSpace 4_M_JPN,{
- function ChkResult;
- function FinalReport;
-
- // Reset
- resetlvl(1);
- getinventorylist;
- for (.@i = 0; .@i < @inventorylist_count; ++.@i) {
- delitem(@inventorylist_id[.@i], @inventorylist_amount[.@i]); //clear inventory
- }
-
- //basic backward chk
- .@testid = 0;
- .@succes = 0;
- .@ret = checkweight(Apple, 10);
- .@succes += ChkResult(.@testid++, 1, .@ret); //should be success
- .@ret = checkweight("Apple", 10);
- .@succes += ChkResult(.@testid++, 1, .@ret); //should be success
- .@ret = checkweight(Premium_Reset_Stone, 33000);
- .@succes += ChkResult(.@testid++, 0, .@ret); //should be failure too many item amount item weight=0
- .@ret = checkweight("Premium_Reset_Stone", 33000);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure too many item amount
- .@ret = checkweight(Blue_Gemstone, 500);
- .@success += ChkResult(.@testid++, 1, .@ret); //should be success weight based on max weight=2030
- .@ret = checkweight(Blue_Gemstone, 1000);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure weight based on max weight=2030
- .@ret = checkweight(Magic_Stone_Ring, 100);
- .@success += ChkResult(.@testid++, 1, .@ret); //should be success
- .@ret = checkweight(Magic_Stone_Ring, 101);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure (with MAX_INVENTORY = 100)
- .@ret = checkweight(-1, 1);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure invalid item id
- .@ret = checkweight(Apple, 0);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure invalid amount
-
- debugmes "End backward test";
- FinalReport(.@testid, .@succes);
-
- //update using list test
- .@testid = 0;
- .@succes = 0;
-
- .@ret = checkweight(Apple, 10, Banana, 10);
- .@success += ChkResult(.@testid++, 1, .@ret); //should be success
- .@ret = checkweight("Apple", 10, "Banana", 10);
- .@success += ChkResult(.@testid++, 1, .@ret); //should be success
- .@ret = checkweight(Apple, 80, Banana, 33000);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure
- .@ret = checkweight("Apple", 80, "Banana", 33000);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure too many item amount
- .@ret = checkweight("Apple", 10, "Banana", 21, Apple);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure invalid nb of args
- .@ret = checkweight(Blue_Gemstone, 500, Red_Gemstone, 100);
- .@success += ChkResult(.@testid++, 1, .@ret); //should be succes weight 1800/2030
- .@ret = checkweight(Blue_Gemstone, 500, Red_Gemstone, 500);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure weight 3000/2030
- .@ret = checkweight(Magic_Stone_Ring, 95, Green_Apple_Ring, 5);
- .@success += ChkResult(.@testid++, 1, .@ret); //should be success
- .@ret = checkweight(Magic_Stone_Ring, 95, Green_Apple_Ring, 10);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure (with MAX_INVENTORY = 100)
- .@ret = checkweight(Apple, 1, -1, 1);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure invalid item id
- .@ret = checkweight(Apple, 1, Banana, 0);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure invalid amount
- .@ret = checkweight(Premium_Reset_Stone, 31000, Premium_Reset_Stone, 2000);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure overamount inventory
- .@ret = checkweight(Apple, 1, Banana, 1, Grape, 1, Carrot, 1);
- .@success += ChkResult(.@testid++, 1, .@ret); //should be sucess
-
- debugmes "End update by list tests";
- FinalReport(.@testid, .@succes);
-
- //update using array tests
- .@testid = 0;
- .@succes = 0;
-
- setarray .@item[0], Apple, Banana, Grape, Carrot;
- setarray .@count[0], 1, 5, 9, 12;
- .@ret = checkweight2(.@item, .@count);
- .@success += ChkResult(.@testid++, 1, .@ret); //should be sucess
- cleararray .@item[0], 0, 4;
- cleararray .@count[0], 0, 4;
- setarray .@item[0], Apple, Banana, Grape, Carrot;
- setarray .@count[0], 1, 5, -1, 12;
- .@ret = checkweight2(.@item, .@count);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure, invalid amout
- cleararray .@item[0], 0, 4;
- cleararray .@count[0], 0, 4;
- setarray .@item[0], Apple, Banana, Grape, -1;
- setarray .@count[0], 1, 5, 15, 12;
- .@ret = checkweight2(.@item, .@count);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure, invalid id
- cleararray .@item[0], 0, 4;
- cleararray .@count[0], 0, 4;
- setarray .@item[0], Blue_Gemstone, Yellow_Gemstone, Red_Gemstone, Emperium;
- setarray .@count[0], 300, 300, 300, 300;
- .@ret = checkweight2(.@item, .@count);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure, total by weight
- cleararray .@item[0], 0, 4;
- cleararray .@count[0], 0, 4;
- setarray .@item[0], Premium_Reset_Stone, Premium_Reset_Stone;
- setarray .@count[0], 31000, 2000;
- .@ret = checkweight2(.@item, .@count);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure, total by weight
- cleararray .@item[0], 0, 2;
- cleararray .@count[0], 0, 2;
- setarray .@item[0], Magic_Stone_Ring, Green_Apple_Ring;
- setarray .@count[0], 95, 5;
- .@ret = checkweight2(.@item, .@count);
- .@success += ChkResult(.@testid++, 1, .@ret); //should be success
- setarray .@count[0], 95, 10;
- .@ret = checkweight2(.@item, .@count);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure overamount item
- cleararray .@item[0], 0, 2;
- cleararray .@count[0], 0, 2;
- setarray .@item[0], Premium_Reset_Stone, Premium_Reset_Stone, Apple;
- setarray .@count[0], 1, 3;
- .@ret = checkweight2(.@item, .@count);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure, size mistmatch
- cleararray .@item[0], 0, 3;
- cleararray .@count[0], 0, 2;
- setarray .@item[0], Premium_Reset_Stone, Premium_Reset_Stone;
- setarray .@count[0], 1, 3, 5;
- .@ret = checkweight2(.@item, .@count);
- .@success += ChkResult(.@testid++, 0, .@ret); //should be failure, size mistmatch
-
- debugmes "End update by array tests";
- FinalReport(.@testid, .@succes);
-
- end;
-
- function ChkResult {
- .@tid = getarg(0);
- .@expected = getarg(1);
- .@ret = getarg(2);
- .@sucess = (.@ret==.@expected);
- debugmes "Test "+.@tid+" = "+(.@sucess?"Sucess":"Fail");
- return .@sucess;
- }
-
- function FinalReport {
- .@tdone = getarg(0);
- .@succes = getarg(1);
- debugmes "Results = Pass : "+.@succes+"/"+.@tdone+" Fails : "+(.@tdone-.@succes)+"/"+.@tdone;
- if(.@succes != .@tdone) { debugmes "Some failure as occured, enable chkresult print to found out"; }
- return;
- }
-}
diff --git a/doc/sample/npc_test_duplicate.txt b/doc/sample/npc_test_duplicate.txt
deleted file mode 100644
index 38670d4d5..000000000
--- a/doc/sample/npc_test_duplicate.txt
+++ /dev/null
@@ -1,33 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Duplicate Test
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20140320
-//===== Description: =========================================
-//= An example of how duplicate NPCs are handled:
-//= NPC variables are shared between all duplicates.
-//= In this sample, to get the NPC coordinate, has to trigger OnTouch
-//= Duplicates always override the source NPC's trigger area (even 0x0).
-//= 'OnInit' loads the main npc last, for some reason. (check with debugmes)
-//============================================================
-
-- script Test Script FAKE_NPC,1,1,{
- mes "Hi.";
- mes "My coords are "+ .map$ +", "+ .x +"/" +.y ;
- close;
-
-OnInit:
- getmapxy(.map$, .x, .y, 1);
- debugmes strnpcinfo(NPC_NAME);
- end;
-
-OnTouch:
- getmapxy(.map$, .x, .y, 1);
- emotion e_scissors;
- end;
-}
-
-prontera,150,175,4 duplicate(Test Script) Test1 4_PORING
-prontera,155,175,4 duplicate(Test Script) Test2 4_PORING,2,2
-prontera,160,175,4 duplicate(Test Script) Test3 4_PORING,3,3
diff --git a/doc/sample/npc_test_func.txt b/doc/sample/npc_test_func.txt
deleted file mode 100644
index a57b6cfb1..000000000
--- a/doc/sample/npc_test_func.txt
+++ /dev/null
@@ -1,35 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Functions
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates use of functions.
-//============================================================
-
-// Define the function func001
-function script func001 {
- mes "Hello there!";
- next;
- return; // Return to script
-}
-
-// Define the function func002
-function script func002 {
- return "I'm a function";
-}
-
-// Uses 3 different methods of displaying dialogue from both internal and external sources.
-prontera,168,189,1 script Functions 4_F_KAFRA6,{
- callfunc "func001"; // Calls func001 and displays "Hello there!"
- mes callfunc("func002"); // Calls func002 and displays "I'm a function"
- next;
- callsub L_SUB001; // Calls the label L_SUB001 and displays "I'm a label"
- close;
- end;
-
-L_SUB001:
- mes "I'm a label";
- return;
-}
diff --git a/doc/sample/npc_test_npctimer.txt b/doc/sample/npc_test_npctimer.txt
deleted file mode 100644
index 6c9b85a0e..000000000
--- a/doc/sample/npc_test_npctimer.txt
+++ /dev/null
@@ -1,42 +0,0 @@
-//===== Hercules Script ======================================
-//= Sample: NPC Timers
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates NPC timer commands.
-//============================================================
-
-prontera,156,183,0 script NPCtimerTest::npctimerX0000 4_F_KAFRA2,{
- mes "Timer value" + getnpctimer(0);
- mes "State timer" + getnpctimer(1,"npctimerX0000");
- mes "Number of events" + getnpctimer(2);
- switch(select("Initialization:Stop:Start:Settings")) {
- case 1:
- initnpctimer;
- close;
- case 2:
- stopnpctimer;
- close;
- case 3:
- startnpctimer;
- close;
- case 4:
- input .@temp;
- setnpctimer .@temp;
- close;
- }
-
-OnTimer1000:
- npctalk "After a second...";
- end;
-
-OnTimer5000:
- npctalk "After 5 seconds...";
- end;
-
-OnTimer10000:
- npctalk "After 10 seconds...";
- end;
-}
diff --git a/doc/sample/npc_test_npctimer2.txt b/doc/sample/npc_test_npctimer2.txt
deleted file mode 100644
index b325c0c90..000000000
--- a/doc/sample/npc_test_npctimer2.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-//===== Hercules Script ======================================
-//= Sample: Attached NPC Timers
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates attached NPC timer commands.
-//============================================================
-
-prontera,156,183,0 script NPCtimerTest::npctimerX0000 4_F_KAFRA2,{
- mes "What would you like to know?";
- select("Tell me my level.");
- mes "I need time to think...";
- initnpctimer;
- attachnpctimer;
- close;
-
-OnTimer5000:
- mes "Ah, your level is " + readparam(11) + "!";
- detachnpctimer;
- close;
-}
diff --git a/doc/sample/npc_test_pcre.txt b/doc/sample/npc_test_pcre.txt
deleted file mode 100644
index 1306d1798..000000000
--- a/doc/sample/npc_test_pcre.txt
+++ /dev/null
@@ -1,402 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: PCRE
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates PCRE commands.
-//============================================================
-
-prontera,152,181,5 script MouseJstr 4_M_JPN,{
-
-// hello
-Lquote0:
- npctalk "How do you do. Please state your problem.";
- end;
-
-// computer
-Lquote1:
- switch(rand(4)) {
- case 0: npctalk "Do computers worry you?"; break;
- case 1: npctalk "What do you think about machines?"; break;
- case 2: npctalk "Why do you mention computers?"; break;
- case 3: npctalk "What do you think machines have to do with your problem?"; break;
- }
- end;
-
-// name
-Lquote2:
- npctalk "I am not interested in names";
- end;
-
-// sorry
-Lquote3:
- switch(rand(3)) {
- case 0: npctalk "Please don't apologize"; break;
- case 1: npctalk "Apologies are not necessary"; break;
- case 2: npctalk "What feelings do you have when you apologize"; break;
- }
- end;
-
-// I remember $@p2$
-Lquote4:
- switch(rand(6)) {
- case 0: npctalk "Do you often think of "+$@p2$+"?"; break;
- case 1: npctalk "Does thinking of "+$@p2$+" bring anything else to mind?"; break;
- case 2: npctalk "What else do you remember?"; break;
- case 3: npctalk "Why do you recall "+$@p2$+" right now?"; break;
- case 4: npctalk "What in the present situation reminds you of "+$@p2$+"?"; break;
- case 5: npctalk "What is the connection between me and "+$@p2$+"?"; break;
- }
- end;
-
-// do you remember
-Lquote5:
- switch (rand(4)) {
- case 0: npctalk "Did you think I would forget "+$@p2$+" ?"; break;
- case 1: npctalk "Why do you think I should recall "+$@p2$+" now"; break;
- case 2: npctalk "What about "+$@p2$+""; break;
- case 3: npctalk "You mentioned "+$@p2$+""; break;
- }
- end;
-
-// if
-Lquote6:
- switch(rand(4)) {
- case 0: npctalk "Do you really think its likely that "+$@p2$+""; break;
- case 1: npctalk "Do you wish that "+$@p2$+"?"; break;
- case 2: npctalk "What do you think about "+$@p2$+"?"; break;
- case 3: npctalk "Really-- if "+$@p2$+"?"; break;
- }
- end;
-
-// i dreamt
-Lquote7:
- switch(rand(3)) {
- case 0: npctalk "Really-- "+$@p2$+""; break;
- case 1: npctalk "Have you ever fantasized "+$@p2$+" while you were awake?"; break;
- case 2: npctalk "Have you dreamt "+$@p2$+" before?"; break;
- }
- end;
-
-// dream about
-Lquote8:
- npctalk "How do you feel about "+$@p2$+" in reality?";
- end;
-
-// dream
-Lquote9:
- switch(rand(4)) {
- case 0: npctalk "What does this dream suggest to you?"; break;
- case 1: npctalk "Do you dream often?"; break;
- case 2: npctalk "What persons appear in your dreams?"; break;
- case 3: npctalk "Don't you believe that dream has to do with your problem?"; break;
- }
- end;
-
-// my mother
-Lquote10:
- switch(rand(2)) {
- case 0: npctalk "Who else in your family "+$@p2$+""; break;
- case 1: npctalk "Tell me more about your family"; break;
- }
- end;
-
-// my father
-Lquote11:
- switch(rand(3)) {
- case 0: npctalk "Your father"; break;
- case 1: npctalk "Does he influence you strongly?"; break;
- case 2: npctalk "What else comes to mind when you think of your father?"; break;
- }
- end;
-
-// I want
-Lquote12:
- switch(rand(3)) {
- case 0: npctalk "What would it mean if you got "+$@p2$+""; break;
- case 1: npctalk "Why do you want "+$@p2$+""; break;
- case 2: npctalk "Suppose you got "+$@p2$+" soon"; break;
- }
- end;
-
-// I am glad
-Lquote13:
- switch(rand(3)) {
- case 0: npctalk "How have I helped you to be "+$@p2$+""; break;
- case 1: npctalk "What makes you happy just now"; break;
- case 2: npctalk "Can you explain why you are suddenly "+$@p2$+""; break;
- }
- end;
-
-// I am sad
-Lquote14:
- switch(rand(2)) {
- case 0: npctalk "I am sorry to hear you are depressed"; break;
- case 1: npctalk "I'm sure its not pleasant to be sad"; break;
- }
- end;
-
-// $@p2 are like "+$@p3$+"
-Lquote15:
- npctalk "What resemblance do you see between "+$@p2$+" and "+$@p3$+"";
- end;
-
-// "+$@p2$+" is like "+$@p3$+"
-Lquote16:
- switch(rand(4)) {
- case 0: npctalk "In what way is it that "+$@p2$+" is like "+$@p3$+""; break;
- case 1: npctalk "What resemblance do you see?"; break;
- case 2: npctalk "Could there really be some connection?"; break;
- case 3: npctalk "How?"; break;
- }
- end;
-
-// alike
-Lquote17:
- switch(rand(2)) {
- case 0: npctalk "In what way?"; break;
- case 1: npctalk "What similarities are there?"; break;
- }
- end;
-
-// same
-Lquote18:
- npctalk "What other connections do you see?";
- end;
-
-// I was "+$@p2$+"
-Lquote19:
- switch(rand(3)) {
- case 0: npctalk "Were you really?"; break;
- case 1: npctalk "Perhaps I already knew you were "+$@p2$+""; break;
- case 2: npctalk "Why do you tell me you were "+$@p2$+" now?"; break;
- }
- end;
-
-// was I
-Lquote20:
- switch(rand(3)) {
- case 0: npctalk "What if you were "+$@p2$+" ?"; break;
- case 1: npctalk "Do you thin you were "+$@p2$+""; break;
- case 2: npctalk "What would it mean if you were "+$@p2$+""; break;
- }
- end;
-
-// I am
-Lquote21:
- switch(rand(2)) {
- case 0: npctalk "In what way are you "+$@p2$+""; break;
- case 1: npctalk "Do you want to be "+$@p2$+" ?"; break;
- }
- end;
-
-// am I
-Lquote22:
- switch(rand(4)) {
- case 0: npctalk "Do you believe you are "+$@p2$+""; break;
- case 1: npctalk "Would you want to be "+$@p2$+""; break;
- case 2: npctalk "You wish I would tell you you are "+$@p2$+""; break;
- case 3: npctalk "What would it mean if you were "+$@p2$+""; break;
- }
- end;
-
-// am
-Lquote23:
- switch(rand(2)) {
- case 0: npctalk "Why do you say AM?"; break;
- case 1: npctalk "I don't understand that"; break;
- }
- end;
-
-// are you
-Lquote24:
- switch(rand(3)) {
- case 0: npctalk "Why are you interested in whether I am "+$@p2$+" or not?"; break;
- case 1: npctalk "Would you prefer if I weren't "+$@p2$+""; break;
- case 2: npctalk "Perhaps I am "+$@p2$+" in your fantasies"; break;
- }
- end;
-
-// you are
-Lquote25:
- npctalk "What makes you think I am "+$@p2$+" ?";
- end;
-
-// because
-Lquote26:
- switch(rand(3)) {
- case 0: npctalk "Is that the real reason?"; break;
- case 1: npctalk "What other reasons might there be?"; break;
- case 2: npctalk "Does that reason seem to explain anything else?"; break;
- }
- end;
-
-// were you
-Lquote27:
- switch(rand(3)) {
- case 0: npctalk "Perhaps I was "+$@p2$+""; break;
- case 1: npctalk "What do you think?"; break;
- case 2: npctalk "What if I had been "+$@p2$+""; break;
- }
- end;
-
-// I can't
-Lquote28:
- switch(rand(2)) {
- case 0: npctalk "Maybe you could "+$@p3$+" now"; break;
- case 1: npctalk "What if you could "+$@p3$+" ?"; break;
- }
- end;
-
-// I feel
-Lquote29:
- npctalk "Do you often feel "+$@p2$+" ?";
- end;
-
-// I felt
-Lquote30:
- npctalk "What other feelings do you have?";
- end;
-
-// $@p1$ I $@p2$ you $@p3$
-Lquote31:
- npctalk "Perhaps in your fantasy we "+$@p3$+" each other?";
- end;
-
-// why don't you
-Lquote32:
- switch(rand(3)) {
- case 0: npctalk "Should you "+$@p3$+" yourself?"; break;
- case 1: npctalk "Do you believe I don't "+$@p3$+""; break;
- case 2: npctalk "Perhaps I will "+$@p3$+" in good time"; break;
- }
- end;
-
-// yes
-Lquote33:
- switch(rand(3)) {
- case 0: npctalk "You seem quite positive"; break;
- case 1: npctalk "You are sure?"; break;
- case 2: npctalk "I understand"; break;
- }
- end;
-
-// no
-Lquote34:
- switch(rand(3)) {
- case 0: npctalk "Why not?"; break;
- case 1: npctalk "You are being a bit negative"; break;
- case 2: npctalk "Are you saying NO just to be negative?"; break;
- }
- end;
-
-// someone
-Lquote35:
- npctalk "Can you be more specific?";
- end;
-
-// everyone
-Lquote36:
- switch(rand(4)) {
- case 0: npctalk "surely not everyone"; break;
- case 1: npctalk "Can you think of anyone in particular?"; break;
- case 2: npctalk "Who for example?"; break;
- case 3: npctalk "You are thinking of a special person?"; break;
- }
- end;
-
-// always
-Lquote37:
- switch(rand(4)) {
- case 0: npctalk "Can you think of a specific example?"; break;
- case 1: npctalk "When?"; break;
- case 2: npctalk "What incident are you thinking of?"; break;
- case 3: npctalk "Really-- always?"; break;
- }
- end;
-
-// what
-Lquote38:
- switch(rand(5)) {
- case 0: npctalk "Why do you ask?"; break;
- case 1: npctalk "Does that question interest you?"; break;
- case 2: npctalk "What is it you really want to know?"; break;
- case 3: npctalk "What do you think?"; break;
- case 4: npctalk "What comes to your mind when you ask that?"; break;
- }
- end;
-
-// perhaps
-Lquote39:
- npctalk "You do not seem quite certain";
- end;
-
-// are
-Lquote40:
- switch(rand(2)) {
- case 0: npctalk "Did you think they might not be "+$@p2$+""; break;
- case 1: npctalk "Possibly they are "+$@p2$; break;
- }
- end;
-
-// default
-Lquote41:
- switch(rand(6)) {
- case 0: npctalk "Very interesting"; break;
- case 1: npctalk "I am not sure I understand you fully"; break;
- case 2: npctalk "What does that suggest to you?"; break;
- case 3: npctalk "Please continue"; break;
- case 4: npctalk "Go on"; break;
- case 5: npctalk "Do you feel strongly about discussing such things?"; break;
- }
- end;
-
-OnInit:
- defpattern 1, "([^:]+):.*\\shello.*", "Lquote0";
- defpattern 1, "([^:]+):.*\\scomputer.*", "Lquote1";
- defpattern 1, "([^:]+):.*\\sname.*", "Lquote2";
- defpattern 1, "([^:]+):.*\\ssorry.*", "Lquote3";
- defpattern 1, "([^:]+):.*\\si\\s+remember\\s+(.*)", "Lquote4";
- defpattern 1, "([^:]+):.*\\sdo\\s+you\\s+remember\\s+(.*)", "Lquote5";
- defpattern 1, "([^:]+):.*\\sif\\s+(.*)", "Lquote6";
- defpattern 1, "([^:]+):.*\\si\\s+dreamt\\s+(.*)", "Lquote7";
- defpattern 1, "([^:]+):.*\\sdream\\s+about\\s+(.*)", "Lquote8";
- defpattern 1, "([^:]+):.*\\sdream\\s+(.*)", "Lquote9";
- defpattern 1, "([^:]+):.*\\smy\\s+mother\\s+(.*)", "Lquote10";
- defpattern 1, "([^:]+):.*\\smy\\s+father\\s+(.*)", "Lquote11";
- defpattern 1, "([^:]+):.*\\si\\s+want\\s+(.*)", "Lquote12";
- defpattern 1, "([^:]+):.*\\si\\s+am\\s+glad\\s+(.*)", "Lquote13";
- defpattern 1, "([^:]+):\\s+(.*)\\s+i\\s+am\\s+sad\\s+(.*)", "Lquote14";
- defpattern 1, "([^:]+):\\s+(.*)\\s+are\\s+like\\s+(.*)", "Lquote15";
- defpattern 1, "([^:]+):\\s+(.*)\\s+is\\s+like\\s+(.*)", "Lquote16";
- defpattern 1, "([^:]+):.*\\salike\\s+(.*)", "Lquote17";
- defpattern 1, "([^:]+):.*\\ssame\\s+(.*)", "Lquote18";
- defpattern 1, "([^:]+):.*\\si\\s+was\\s+(.*)", "Lquote19";
- defpattern 1, "([^:]+):.*\\swas\\s+i\\s+(.*)", "Lquote20";
- defpattern 1, "([^:]+):.*\\si\\s+am\\s+(.*)", "Lquote21";
- defpattern 1, "([^:]+):.*\\sam\\s+i\\s+(.*)", "Lquote22";
- defpattern 1, "([^:]+):.*\\sam\\s+(.*)", "Lquote23";
- defpattern 1, "([^:]+):.*\\sare\\s+you\\s+(.*)", "Lquote24";
- defpattern 1, "([^:]+):.*\\syou\\s+are\\s+(.*)", "Lquote25";
- defpattern 1, "([^:]+):.*\\sbecause\\s+(.*)", "Lquote26";
- defpattern 1, "([^:]+):.*\\swere\\s+you\\s+(.*)", "Lquote27";
- defpattern 1, "([^:]+):.*\\si\\s+(cant|can't|cannot)\\s+(.*)", "Lquote28";
- defpattern 1, "([^:]+):.*\\si\\s+feel\\s+(.*)", "Lquote29";
- defpattern 1, "([^:]+):.*\\si\\s+felt\\s+(.*)", "Lquote30";
- defpattern 1, "([^:]+):.*\\si\\s+(.*)\\s+you\\s+(.*)", "Lquote31";
- defpattern 1, "([^:]+):.*\\swhy\\s+(don't|dont)\\s+you\\s+(.*)", "Lquote32";
- defpattern 1, "([^:]+):.*\\syes\\s+(.*)", "Lquote33";
- defpattern 1, "([^:]+):.*\\sno\\s+(.*)", "Lquote34";
- defpattern 1, "([^:]+):.*\\ssomeone\\s+(.*)", "Lquote35";
- defpattern 1, "([^:]+):.*\\severyone\\s+(.*)", "Lquote36";
- defpattern 1, "([^:]+):.*\\salways\\s+(.*)", "Lquote37";
- defpattern 1, "([^:]+):.*\\swhat\\s+(.*)", "Lquote38";
- defpattern 1, "([^:]+):.*\\sperhaps\\s+(.*)", "Lquote39";
- defpattern 1, "([^:]+):.*\\sare\\s+(.*)", "Lquote40";
- defpattern 1, "([^:]+):(.*)", "Lquote41";
-
- activatepset 1;
- end;
-}
diff --git a/doc/sample/npc_test_quest.txt b/doc/sample/npc_test_quest.txt
deleted file mode 100644
index 90659aa10..000000000
--- a/doc/sample/npc_test_quest.txt
+++ /dev/null
@@ -1,52 +0,0 @@
-//===== Hercules Script ======================================
-//= Sample: Quest Test
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates quest commands.
-//============================================================
-
-// Before installing an NPC like the one below, you would
-// need to add the quest to /db/quest_db.txt - e.g:
-// 70000,0,1002,3,0,0,0,0,"3 Splats Please!"
-
-prontera,90,95,1 script Jelly 2_F_MAGICMASTER,{
- if (!questprogress(70000)) {
- // Quest not yet started.
- mes "[Jelly]";
- mes "Hey there! Would you help me?";
- next;
- switch(select("I'd rather not:What's up?")){
- case 1:
- mes "[Jelly]";
- mes "I didn't want your help anyway!";
- close;
- case 2:
- mes "[Jelly]";
- mes "Those Porings are weirding me out.";
- mes "Would you kill 3 for me?";
- setquest 70000; // Adds the quest to your Quest Window.
- close;
- }
- } else if (questprogress(70000,HUNTING) == 2) {
- // All monsters killed.
- mes "[Jelly]";
- mes "Awesome! Thank you!";
- getexp 10000,0;
- dispbottom "You have been rewarded with 10,000 Base Exp.";
- completequest 70000; // Sets quest status to "complete".
- close;
- } else if (questprogress(70000) == 1) {
- // Quest is active.
- mes "[Jelly]";
- mes "Keep going, almost there!";
- close;
- } else if (questprogress(70000) == 2) {
- // Quest finished.
- mes "[Jelly]";
- mes "Thanks again for doing that for me!";
- close;
- }
-}
diff --git a/doc/sample/npc_test_setitemx.txt b/doc/sample/npc_test_setitemx.txt
deleted file mode 100644
index 519cfa363..000000000
--- a/doc/sample/npc_test_setitemx.txt
+++ /dev/null
@@ -1,43 +0,0 @@
-//===== Hercules Script ======================================
-//= Sample: Setiteminfo & Setitemscript
-//===== By: ==================================================
-//= Lupus
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates 'setiteminfo' and 'setitemscript' commands.
-//============================================================
-
-prontera,164,161,5 script Lupus WOLF,{
- mes "Please choose an option:";
- next;
- switch (select("Make Knife[3] Edible", "Make Apple Equippable", "Edible Knife = Full SP", "Knife = Weapon + 3 Notes")) {
- case 1:
- mes "Ok. We made Knife[3] edible.";
- setiteminfo(Knife, ITEIMINFO_TYPE, IT_HEALING);
- setitemscript(Knife, "{dispbottom \"* You used Knife[3]\";}");
- break;
- case 2:
- mes "Ok. We made Apple equippable.";
- setiteminfo(Apple, ITEMINFO_TYPE, IT_ARMOR);
- setiteminfo(Apple, ITEMINFO_LOC, EQP_HEAD_MID); //where to equip to (equip = 512)
- setiteminfo(Apple, ITEMINFO_VIEWID, 85); //set Headgear Sprite ID (view id = 85)
- setitemscript(Apple, "{dispbottom \"* Other item's changed\";}", 0);
- setitemscript(Apple, "{dispbottom \"* Equipped\";}", 1);
- setitemscript(Apple, "{dispbottom \"* Unequipped\";}", 2);
- break;
- case 3:
- mes "Ok. Now edible Knife[3] restores your SP.";
- setitemscript(Knife, 2, 0);
- setitemscript(Knife, "{dispbottom \"* You ate Knife[3] + Full SP\"; percentheal 0,100;}");
- break;
- case 4:
- mes "Ok. We made Knife a weapon, but added 3 notes.";
- setiteminfo(Knife, ITEIMINFO_TYPE, IT_WEAPON);
- setitemscript(Knife, "{dispbottom \"* 1 Used\";}", 0);
- setitemscript(Knife, "{dispbottom \"* 2 Equipped\";}", 1);
- setitemscript(Knife, "{dispbottom \"* 3 Unequipped\";}", 2);
- break;
- }
- close;
-}
diff --git a/doc/sample/npc_test_setmapflag.txt b/doc/sample/npc_test_setmapflag.txt
deleted file mode 100644
index 44137bef0..000000000
--- a/doc/sample/npc_test_setmapflag.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-//===== Hercules Script ======================================
-//= Sample: Mapflag Test
-//===== By: ==================================================
-//= Jbain
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates mapflag commands.
-//============================================================
-
-prontera,165,145,0 script EXPflagtest 2_F_MAGICMASTER,{
- mes "[EXPflagtest]";
- mes "Set up the map rates:";
- switch(select("Job EXP:Base EXP:PVP on:Reset all flags")) {
- case 1:
- input .@rate;
- setmapflag "prontera",mf_jexp,.@rate;
- close;
- case 2:
- input .@rate;
- setmapflag "prontera",mf_bexp,.@rate;
- close;
- case 3:
- setmapflag "prontera",mf_pvp;
- close;
- case 4:
- removemapflag "prontera",mf_bexp;
- removemapflag "prontera",mf_jexp;
- removemapflag "prontera",mf_pvp;
- close;
- }
-}
diff --git a/doc/sample/npc_test_skill.txt b/doc/sample/npc_test_skill.txt
deleted file mode 100644
index c26ed1b62..000000000
--- a/doc/sample/npc_test_skill.txt
+++ /dev/null
@@ -1,37 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Skill
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates the 'skill' command.
-//============================================================
-
-// skill <skill id>,<level>{,<flag>};
-// flag=0 Grants the skill permanently
-// flag=1 Grants the skill temporarily
-// flag=2 Level bonus, stackable
-// flag=3 Grants the skill permanently even after skill resets/job changes
-// If flag is undefined, it defaults to 1
-// View db/(pre-)re/skill_db.txt for skill IDs
-
-prontera,157,182,0 script Skills 4_F_KAFRA2,{
- mes "What skill would you like?";
- switch(select("First Aid:Play Dead:Heal:Sight:None")) {
- case 1:
- skill NV_FIRSTAID,1,0; // Permanently gives player level 1 First Aid
- close;
- case 2:
- skill NV_TRICKDEAD,1,0; // Permanently gives player level 1 Play Dead
- close;
- case 3:
- skill AL_HEAL,3,1; // Temporarily gives player level 3 Heal
- close;
- case 4:
- skill MG_SIGHT,1,3; // Permanently gives player level 1 Sight, even after skill resets/job changes
- close;
- case 5:
- close;
- }
-}
diff --git a/doc/sample/npc_test_time.txt b/doc/sample/npc_test_time.txt
deleted file mode 100644
index c3d4eae1d..000000000
--- a/doc/sample/npc_test_time.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: Time Test
-//===== By: ==================================================
-//= rAthena Dev Team
-//===== Current Version: =====================================
-//= 20151115
-//===== Description: =========================================
-//= Demonstrates time commands.
-//============================================================
-
-prontera,157,181,6 script Time Sample 8W_SOLDIER,{
- mes "[Time Sample]";
- mes " System Tick : " + gettimetick(0);
- mes " Time Tick : " + gettimetick(1);
- mes " GETTIME_SECOND : " + gettime(GETTIME_SECOND) + " (Sec)";
- mes " GETTIME_MINUTE : " + gettime(GETTIME_MINUTE) + " (Min)";
- mes " GETTIME_HOUR : " + gettime(GETTIME_HOUR) + " (Hour)";
- mes " GETTIME_WEEKDAY : " + gettime(GETTIME_WEEKDAY) + " (WeekDay)";
- mes "GETTIME_DAYOFMONTH : " + gettime(GETTIME_DAYOFMONTH) + " (MonthDay)";
- mes " GETTIME_MONTH : " + gettime(GETTIME_MONTH) + " (Month)";
- mes " GETTIME_YEAR : " + gettime(GETTIME_YEAR) + " (Year)";
- mes " GETTIME_DAYOFYEAR : " + gettime(GETTIME_DAYOFYEAR) + " (Day of Year)";
- mes " gettimestr : " + gettimestr("%Y-%m/%d %H:%M:%S",19);
- close;
-}
diff --git a/doc/sample/npc_trader_sample.txt b/doc/sample/npc_trader_sample.txt
deleted file mode 100644
index 24c53330b..000000000
--- a/doc/sample/npc_trader_sample.txt
+++ /dev/null
@@ -1,66 +0,0 @@
-//===== Hercules Script =======================================
-//= Sample: NPC Trader
-//===== By: ==================================================
-//= Hercules Dev Team
-//===== Current Version: =====================================
-//= 20131225
-//===== Description: =========================================
-//= Demonstrates NPC Trader.
-//============================================================
-
-/* ordinary zeny trader */
-prontera,152,151,1 trader TestTrader 4_F_EDEN_OFFICER,{
- OnInit:
- sellitem Valkyrja's_Shield;
- end;
-}
-/* ordinary cash trader */
-prontera,152,152,1 trader TestTraderCash 4_F_EDEN_OFFICER,{
- OnInit:
- tradertype(NST_CASH);
- sellitem Valkyrja's_Shield;
- end;
-}
-/* custom npc trader */
-prontera,153,152,1 trader TestCustom2 4_F_EDEN_OFFICER,{
- OnInit:
- tradertype(NST_CUSTOM);
- sellitem Red_Potion,2;
- end;
-
-/* allows currency to be item 501 and 502 */
-OnCountFunds:
- setcurrency(countitem(Red_Potion),countitem(Orange_Potion));
- end;
-
-/* receives @price (total cost) and @points (the secondary input field for cash windows) */
-OnPayFunds:
- dispbottom "Hi: price="+@price+" and points="+@points;
- if( countitem(Orange_Potion) < @points || countitem(Red_Potion) < @price-@points )
- end;
- delitem Orange_Potion,@points;
- delitem Red_Potion,@price-@points;
- purchaseok();
- end;
-}
-/* demonstrates Market Trader */
-prontera,150,160,6 trader HaiMarket 4_F_EDEN_OFFICER,{
-OnInit:
- tradertype(NST_MARKET);
- sellitem Red_Potion,-1,49;
- end;
-
-OnClock0000://resupplies red potions on midnight
-OnMyResupply:
- if( shopcount(Red_Potion) < 20 )
- sellitem Red_Potion,-1,49;
- end;
-}
-/* demonstrate barter shop */
-prontera,159,284,4 trader Barter Shop#prt 4_M_KID1,{
-OnInit:
- tradertype(NST_BARTER);
- sellitem White_Herb, 100, Red_Potion, 2;
- sellitem Blue_Herb, 200, Orange_Potion, 3;
- end;
-}