summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/constants.md15
-rw-r--r--doc/global_configuration.md65
-rw-r--r--doc/global_configuration.txt69
-rw-r--r--doc/sample/getiteminfo.txt9
-rw-r--r--doc/script_commands.txt1
5 files changed, 87 insertions, 72 deletions
diff --git a/doc/constants.md b/doc/constants.md
index 451f2a5fe..1074eb6bc 100644
--- a/doc/constants.md
+++ b/doc/constants.md
@@ -4278,6 +4278,7 @@
- `ITEMINFO_VIEWID`: 14
- `ITEMINFO_MATK`: 15
- `ITEMINFO_VIEWSPRITE`: 16
+- `ITEMINFO_TRADE`: 17
### monster skill states
@@ -4375,6 +4376,20 @@
- `FUNCTION_IS_LOCAL`: 3
- `FUNCTION_IS_LABEL`: 4
+### item trade restrictions
+
+- `ITR_NONE`: 0
+- `ITR_NODROP`: 1
+- `ITR_NOTRADE`: 2
+- `ITR_PARTNEROVERRIDE`: 4
+- `ITR_NOSELLTONPC`: 8
+- `ITR_NOCART`: 16
+- `ITR_NOSTORAGE`: 32
+- `ITR_NOGSTORAGE`: 64
+- `ITR_NOMAIL`: 128
+- `ITR_NOAUCTION`: 256
+- `ITR_ALL`: 511
+
### Renewal
- `RENEWAL`: 1
diff --git a/doc/global_configuration.md b/doc/global_configuration.md
new file mode 100644
index 000000000..b0e99e698
--- /dev/null
+++ b/doc/global_configuration.md
@@ -0,0 +1,65 @@
+# Global configuration reference
+
+## What is global configuration?
+
+Global configuration is an import system that allows configuration files to be
+shared between servers (login, char, map), but can also be used independently
+in each server.
+
+
+## How does it work?
+
+It works by using the `@include` directive from libconfig:
+
+> "A configuration file may "include" the contents of another file using an
+> include directive. This directive has the effect of inlining the contents of
+> the named file at the point of inclusion.
+
+An include directive must appear on its own line and takes this form:
+
+```
+ @include "filename"
+```
+
+Any backslashes or double quotes in the filename must be escaped as `\\` and
+`\"`, respectively.
+
+
+## How do I stop using global configurations?
+
+To stop using global configuration, all you have to do is copy the contents of
+the file being imported and paste it _exactly_ where the include directive was.
+
+### Example
+
+If you want map server and char server to have their own separate SQL connection
+settings, you would search in `conf/map/map-server.conf` and
+`conf/char/char-server.conf` for this line:
+
+```
+ @include "conf/global/sql_connection.conf"
+```
+
+And replace it with:
+
+```
+ sql_connection: {
+ // [INTER] You can specify the codepage to use in your mySQL tables here.
+ // (Note that this feature requires MySQL 4.1+)
+ //default_codepage: ""
+
+ // [LOGIN] Is `userid` in account_db case sensitive?
+ //case_sensitive: false
+
+ // For IPs, ideally under linux, you want to use localhost instead of 127.0.0.1.
+ // Under windows, you want to use 127.0.0.1. If you see a message like
+ // "Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)"
+ // and you have localhost, switch it to 127.0.0.1
+ db_hostname: "127.0.0.1"
+ db_port: 3306
+ db_username: "ragnarok"
+ db_password: "ragnarok"
+ db_database: "ragnarok"
+ //codepage:""
+ }
+```
diff --git a/doc/global_configuration.txt b/doc/global_configuration.txt
deleted file mode 100644
index a000a4572..000000000
--- a/doc/global_configuration.txt
+++ /dev/null
@@ -1,69 +0,0 @@
-//===== Hercules Documentation ===============================
-//= Global configuration reference
-//===== By: ==================================================
-//= Panikon (Hercules Dev. Team)
-//===== Current Version: =====================================
-//= 20140616
-//===== Description: =========================================
-//= Global configurations found in conf/global/
-//============================================================
-
-- What are global configurations?
-
-Global configurations are configurations that can be shared between servers,
-but can also be set independently in each server.
-
-- How do they work?
-
-They work by using an include system that is available with libconfig:
-
- "A configuration file may "include" the contents of another file using an
- include directive. This directive has the effect of inlining the contents of
- the named file at the point of inclusion.
-
- An include directive must appear on its own line in the input. It has the
- form:
-
- @include "filename"
-
- Any backslashes or double quotes in the filename must be escaped as '\\' and
- '\"', respectively."
- From libconfig's documentation
-
-So each file that is included is actually inside each one of the main
-configuration files and thus a change in the first will be a change in the
-latter.
-Note: the @include directive is read by the server executable, so any path
-should be from were it is and NOT from where the main configuration file is!
-
-- How do I stop using global configurations?
-
-To stop using global configurations is very simple, all you have to do is copy
-the contents that are inside the global configuration file and put them
-_exactly_ where the include directive were in the main configuration file.
-
-E.g.
- Find in any file:
- @include "conf/global/sql_connection.conf"
- Replace it with:
- sql_connection: {
- // [INTER] You can specify the codepage to use in your mySQL tables here.
- // (Note that this feature requires MySQL 4.1+)
- //default_codepage: ""
-
- // [LOGIN] Is `userid` in account_db case sensitive?
- //case_sensitive: false
-
- // For IPs, ideally under linux, you want to use localhost instead of 127.0.0.1
- // Under windows, you want to use 127.0.0.1. If you see a message like
- // "Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)"
- // and you have localhost, switch it to 127.0.0.1
- db_hostname: "127.0.0.1"
- db_port: 3306
- db_username: "ragnarok"
- db_password: "ragnarok"
- db_database: "ragnarok"
- //codepage:""
- }
- If the main configuration file belongs to the map server, for instance, you
- don't need to include default_codepage and case_sensitive.
diff --git a/doc/sample/getiteminfo.txt b/doc/sample/getiteminfo.txt
index 57407c072..9d5121635 100644
--- a/doc/sample/getiteminfo.txt
+++ b/doc/sample/getiteminfo.txt
@@ -9,12 +9,12 @@
//============================================================
prontera,156,179,6 script test_getiteminfo 4_F_KAFRA1,{
- mes "Please enter an item ID.";
- input .@value;
+ 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
- mes "Item ID: "+.@value+" ^nItemID^"+.@value;
+ mesf("Item ID: %d ^nItemID^%d", .@value, .@value);
mes("Current item info:");
mesf("Buy Price: %d", getiteminfo(.@value, ITEMINFO_BUYPRICE));
@@ -34,5 +34,8 @@ prontera,156,179,6 script test_getiteminfo 4_F_KAFRA1,{
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/script_commands.txt b/doc/script_commands.txt
index 42235ce33..1d691774a 100644
--- a/doc/script_commands.txt
+++ b/doc/script_commands.txt
@@ -3239,6 +3239,7 @@ Valid types are:
ITEMINFO_VIEWID - View ID ("Sprite" field in the Item DB)
ITEMINFO_MATK - MATK (only relevant if RENEWAL is set)
ITEMINFO_VIEWSPRITE - View Sprite ("ViewSprite" field in the Item DB)
+ ITEMINFO_TRADE - Trade Restriction (see "doc/constant.md": item trade restriction)
Check sample in doc/sample/getiteminfo.txt