* Partial Fix for bugreport:6800 - Point 3 (soundeffect) and point 4 (sprintf).

* Renamed a few files in doc/sample/ for standardization.
* Indent cleanup in script_commands.txt

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16864 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
thatakkarin 2012-11-06 20:04:12 +00:00
parent be5b2052d9
commit 9a2080f787
3 changed files with 66 additions and 70 deletions

View File

@ -6511,6 +6511,12 @@ directly. It probably determines which directory to play the effect from.
It's certain that giving 0 for the number will play sound files from '\data\wav\',
but where the other numbers will read from is unclear.
The sound files themselves must be in the PCM format, and file names should also
have a maximum length of 23 characters including the .wav extension:
soundeffect "1234567890123456789.wav", 0; // this will play the soundeffect
soundeffect "12345678901234567890.wav", 0; // throw gravity error
You can add your own effects this way, naturally.
---------------------------------------
@ -6694,7 +6700,7 @@ expression pattern is, see a few web pages:
http://www.regular-expressions.info/
http://www.weitz.de/regex-coach/
For an example of this in use, see doc/sample/npc_pcre.txt
For an example of this in use, see doc/sample/npc_test_pcre.txt
With this you could, for example, automatically punish players for asking for
Zeny in public places, or alternatively, automatically give them Zeny instead if
@ -6859,10 +6865,9 @@ The first letter is position 0.
*charat(<string>,<index>)
Returns char at specified index. If index is out of range,
returns empty string.
Returns char at specified index. If index is out of range, returns empty string.
Example:
Example:
charat("This is a string", 10); //returns "s"
@ -6870,12 +6875,11 @@ The first letter is position 0.
*setchar(<string>,<char>,<index>)
Returns the original string with the char at the specified
index set to the specified char. If index out of range, the
original string will be returned.
Only the 1st char in the <char> parameter will be used.
Returns the original string with the char at the specified index set to the
specified char. If index out of range, the original string will be returned.
Only the 1st char in the <char> parameter will be used.
Example:
Example:
setchar("Cat", "B", 0); //returns "Bat"
@ -6883,12 +6887,11 @@ The first letter is position 0.
*insertchar(<string>,<char>,<index>)
Returns the original string with the specified char inserted
at the specified index. If index is out of range, the char
will be inserted on the end of the string that it is closest.
Only the 1st char in the <char> parameter will be used.
Returns the original string with the specified char inserted at the specified
index. If index is out of range, the char will be inserted on the end of the
string that it is closest. Only the 1st char in the <char> parameter will be used.
Example:
Example:
insertchar("laughter", "s", 0); //returns "slaughter"
@ -6896,10 +6899,10 @@ The first letter is position 0.
*delchar(<string>,<index>)
Returns the original string with the char at the specified index
removed. If index is out of range, original string will be returned.
Returns the original string with the char at the specified index removed.
If index is out of range, original string will be returned.
Example:
Example:
delchar("Diet", 3); //returns "Die"
@ -6908,10 +6911,10 @@ The first letter is position 0.
*strtoupper(<string>)
*strtolower(<string>)
Returns the specified string in it's uppercase/lowercase form.
All non-alpha characters will be preserved
Returns the specified string in it's uppercase/lowercase form.
All non-alpha characters will be preserved.
Example:
Example:
strtoupper("The duck is blue!!"); //returns "THE DUCK IS BLUE!!"
@ -6920,11 +6923,10 @@ The first letter is position 0.
*charisupper(<string>,<index>)
*charislower(<string>,<index>)
Returns 1 if character at specified index of specified string is
uppercase/lowercase. Otherwise, 0. Characters not of the alphabelt
will return 0.
Returns 1 if character at specified index of specified string is
uppercase/lowercase. Otherwise, 0. Characters not of the alphabelt will return 0.
Example:
Example:
charisupper("rAthena", 1); //returns 1
@ -6932,12 +6934,11 @@ The first letter is position 0.
*substr(<string>,<start_index>,<end_index>)
Returns the sub-string of the specified string inclusively between
the set indexes.
If indexes are out of range, or the start index is after the end
index, an empty string will be returned.
Returns the sub-string of the specified string inclusively between the set
indexes. If indexes are out of range, or the start index is after the end
index, an empty string will be returned.
Example:
Example:
substr("foobar", 3, 5); //returns "bar"
@ -6945,13 +6946,12 @@ The first letter is position 0.
*explode(<dest_array>,<string>,<delimiter>)
Breaks a string up into substrings based on the specified delimiter.
Substrings will be stored within the specified string array.
Only the 1st char of the delimiter parameter will be used.
If an empty string is passed as a delimiter, the string will be placed
in the array in it's original form.
Example:
Breaks a string up into substrings based on the specified delimiter. Substrings
will be stored within the specified string array. Only the 1st char of the
delimiter parameter will be used. If an empty string is passed as a delimiter,
the string will be placed in the array in it's original form.
Example:
explode(.@my_array$, "Explode:Test:1965:red:PIE", ":");
//.@my_array$ contents will be...
@ -6965,10 +6965,10 @@ The first letter is position 0.
*implode(<string_array>{,<glue>})
Combines all substrings within the specified string array into a single string.
If the glue parameter is specified, it will be inserted inbetween each substring.
Combines all substrings within the specified string array into a single string.
If the glue parameter is specified, it will be inserted inbetween each substring.
Example:
Example:
setarray .@my_array$[0], "This", "is", "a", "test";
implode(.@my_array$, " "); //returns "This is a test"
@ -6976,13 +6976,11 @@ The first letter is position 0.
*sprintf(<format>[,param[,param[,...]]]) [Mirei]
C style sprintf. The resulting string is returned same as in PHP. All C format
specifiers are supported except %n. More info: sprintf @ www.cplusplus.com.
The number of params is only limited by eA's script engine.
See thread: http://www.eathena.ws/board/index.php?showtopic=190410
Example:
C style sprintf. The resulting string is returned same as in PHP. All C format
specifiers are supported except %n. More info: sprintf @ www.cplusplus.com.
The number of params is only limited by rA's script engine.
Example:
.@format$ = 'The %s contains %d monkeys';
dispbottom(sprintf(.@format$, "zoo", 5)); //prints "The zoo contains 5 monkeys"
dispbottom(sprintf(.@format$, "barrel", 82)); //prints "The barrel contains 82 monkeys"
@ -6991,13 +6989,11 @@ The first letter is position 0.
*sscanf(<string>,<format>[,param[,param[,...]]]) [Mirei]
C style sscanf. All C format specifiers are supported.
More info: sscanf @ www.cplusplus.com. The number of params is only limited
by eA's script engine.
See thread: http://www.eathena.ws/board/index.php?showtopic=191157
Example:
C style sscanf. All C format specifiers are supported.
More info: sscanf @ www.cplusplus.com. The number of params is only limited
by rA's script engine.
Example:
sscanf("This is a test: 42 foobar", "This is a test: %d %s", .@num, .@str$);
dispbottom(.@num + " " + .@str$); //prints "42 foobar"
@ -7005,12 +7001,12 @@ The first letter is position 0.
*strpos(<haystack>,<needle>{,<offset>})
PHP style strpos. Finds a substring (needle) within a string (haystack).
The offset parameter indicates the index of the string to start searching.
Returns index of substring on successful search, else -1.
Comparison is case sensitive.
Example:
PHP style strpos. Finds a substring (needle) within a string (haystack).
The offset parameter indicates the index of the string to start searching.
Returns index of substring on successful search, else -1.
Comparison is case sensitive.
Example:
strpos("foobar", "bar", 0); //returns 3
strpos("foobarfoo", "foo", 0); //returns 0
strpos("foobarfoo", "foo", 1); //returns 6
@ -7019,12 +7015,12 @@ The first letter is position 0.
*replacestr(<input>, <search>, <replace>{, <usecase>{, <count>}})
Replaces all instances of a search string in the input with the specified
replacement string. By default is case sensitive unless <usecase> is set
to 0. If specified it will only replace as many instances as specified
in the count parameter.
Example:
Replaces all instances of a search string in the input with the specified
replacement string. By default is case sensitive unless <usecase> is set
to 0. If specified it will only replace as many instances as specified
in the count parameter.
Example:
replacestr("testing tester", "test", "dash"); //returns "dashing dasher"
replacestr("Donkey", "don", "mon", 0); //returns "monkey"
replacestr("test test test test test", "yay", 0, 3); //returns "yay yay yay test test"
@ -7032,11 +7028,11 @@ The first letter is position 0.
---------------------------------------
*countstr(<input>, <search>{, <usecase>})
Counts all instances of a search string in the input. By default is case
sensitive unless <usecase> is set to 0.
Example:
Counts all instances of a search string in the input. By default is case
sensitive unless <usecase> is set to 0.
Example:
countstr("test test test Test", "test"); //returns 3
countstr("cake Cake", "Cake", 0); //returns 2