summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormalufett <malufett.eat.my.binaries@gmail.com>2013-07-21 21:07:49 +0800
committermalufett <malufett.eat.my.binaries@gmail.com>2013-07-21 21:07:49 +0800
commit760faf643731de9d38623dce4d129375801f8b33 (patch)
tree12a748aa89937f240f9c8eba472e58501f94008f
parent8b00d9bd079514a1c307ef5d2e6614055e8f874e (diff)
parentfe946e819d935ca92208e32b6b2766ec92b30601 (diff)
downloadhercules-760faf643731de9d38623dce4d129375801f8b33.tar.gz
hercules-760faf643731de9d38623dce4d129375801f8b33.tar.bz2
hercules-760faf643731de9d38623dce4d129375801f8b33.tar.xz
hercules-760faf643731de9d38623dce4d129375801f8b33.zip
Merge branch 'master' of https://github.com/HerculesWS/Hercules
-rw-r--r--.gitignore4
-rw-r--r--3rdparty/libconfig/libconfig.c2
-rw-r--r--3rdparty/libconfig/scanner.c2
-rw-r--r--Makefile.in10
-rw-r--r--conf/battle/client.conf2
-rwxr-xr-xconfigure658
-rw-r--r--configure.in48
-rw-r--r--db/abra_db.txt7
-rw-r--r--db/cashshop_db.conf8
-rw-r--r--db/elemental_skill_db.txt38
-rw-r--r--db/pre-re/map_zone_db.conf21
-rw-r--r--db/pre-re/skill_tree.conf4
-rw-r--r--db/re/item_db.txt124
-rw-r--r--db/re/map_zone_db.conf21
-rw-r--r--db/re/skill_tree.conf4
-rw-r--r--db/sc_config.txt6
-rw-r--r--db/skill_changematerial_db.txt156
-rw-r--r--db/spellbook_db.txt53
-rw-r--r--doc/script_commands.txt18
-rw-r--r--npc/re/mobs/dungeons/moc_pryd.txt17
-rw-r--r--sql-files/item_db_re.sql184
-rw-r--r--sql-files/tools/convert_engine_innodb.sql2
-rw-r--r--src/char/Makefile.in4
-rw-r--r--src/common/Makefile.in4
-rw-r--r--src/login/Makefile.in6
-rw-r--r--src/map/Makefile.in6
-rw-r--r--src/map/atcommand.c2
-rw-r--r--src/map/battle.c16
-rw-r--r--src/map/chrif.h2
-rw-r--r--src/map/clif.c87
-rw-r--r--src/map/clif.h6
-rw-r--r--src/map/guild.c44
-rw-r--r--src/map/homunculus.c2
-rw-r--r--src/map/irc-bot.c9
-rw-r--r--src/map/itemdb.c16
-rw-r--r--src/map/itemdb.h1
-rw-r--r--src/map/log.c5
-rw-r--r--src/map/mail.c2
-rw-r--r--src/map/map.c34
-rw-r--r--src/map/map.h2
-rw-r--r--src/map/npc.c172
-rw-r--r--src/map/npc.h2
-rw-r--r--src/map/packets.h104
-rw-r--r--src/map/packets_struct.h7
-rw-r--r--src/map/pc.c27
-rw-r--r--src/map/pc.h4
-rw-r--r--src/map/script.c41
-rw-r--r--src/map/script.h1
-rw-r--r--src/map/skill.c28
-rw-r--r--src/map/skill.h1
-rw-r--r--src/map/storage.c12
-rw-r--r--src/test/Makefile.in4
-rw-r--r--src/tool/Makefile.in2
53 files changed, 1196 insertions, 846 deletions
diff --git a/.gitignore b/.gitignore
index 5cbb4e6cb..d6731cd16 100644
--- a/.gitignore
+++ b/.gitignore
@@ -15,6 +15,7 @@
/*.suo
/*.exp
/*.lib
+/autom4te.cache/
/start-log.txt
/char-server
/config.log
@@ -41,6 +42,9 @@
/3rdparty/mt19937ar/Makefile
/3rdparty/mt19937ar/*.o
+# /cache/
+/cache/
+
# /conf/
/conf/import
diff --git a/3rdparty/libconfig/libconfig.c b/3rdparty/libconfig/libconfig.c
index 4cc272c9f..e2c583310 100644
--- a/3rdparty/libconfig/libconfig.c
+++ b/3rdparty/libconfig/libconfig.c
@@ -540,7 +540,7 @@ static int __config_validate_name(const char *name)
for(++p; *p; ++p)
{
- if(! (isalpha((unsigned char)*p) || isdigit((unsigned char)*p) || strchr("*_-", (int)*p)))
+ if(! (isalpha((unsigned char)*p) || isdigit((unsigned char)*p) || strchr("*_-'", (int)*p)))
return(CONFIG_FALSE);
}
diff --git a/3rdparty/libconfig/scanner.c b/3rdparty/libconfig/scanner.c
index c2eb7d188..118fcf8ad 100644
--- a/3rdparty/libconfig/scanner.c
+++ b/3rdparty/libconfig/scanner.c
@@ -399,7 +399,7 @@ static yyconst flex_int32_t yy_ec[256] =
1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
1, 4, 5, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 2, 1, 6, 7, 1, 1, 1, 1, 8,
+ 1, 2, 1, 6, 7, 1, 1, 1, 26, 8,
9, 10, 11, 12, 13, 14, 15, 16, 17, 17,
17, 17, 17, 17, 17, 17, 17, 18, 19, 1,
20, 1, 1, 21, 22, 23, 23, 23, 24, 25,
diff --git a/Makefile.in b/Makefile.in
index 769892f1a..cd8b384b4 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -8,6 +8,7 @@ ifeq ($(HAVE_MYSQL),yes)
LOGIN_SQL_DEPENDS=mt19937ar libconfig common_sql
CHAR_SQL_DEPENDS=mt19937ar libconfig common_sql
MAP_SQL_DEPENDS=mt19937ar libconfig common_sql
+ TOOLS_DEPENDS=mt19937ar libconfig common_sql
CONVERTERS_DEPENDS=common_sql
else
ALL_DEPENDS=needs_mysql
@@ -16,6 +17,7 @@ else
LOGIN_SQL_DEPENDS=needs_mysql
CHAR_SQL_DEPENDS=needs_mysql
MAP_SQL_DEPENDS=needs_mysql
+ TOOLS_DEPENDS=needs_mysql
endif
WITH_PLUGINS=@WITH_PLUGINS@
@@ -62,7 +64,7 @@ char_sql: $(CHAR_SQL_DEPENDS)
map_sql: $(MAP_SQL_DEPENDS)
@$(MAKE) -C src/map sql
-tools:
+tools: $(TOOLS_DEPENDS)
@$(MAKE) -C src/tool
test:
@@ -72,13 +74,11 @@ plugins: $(PLUGIN_DEPENDS)
@$(MAKE) -C src/plugins
import:
-# 1) create conf/import folder
-# 2) add missing files
-# 3) remove remaining .svn folder
+ @# 1) create conf/import folder
+ @# 2) add missing files
@echo "building conf/import folder..."
@if test ! -d conf/import ; then mkdir conf/import ; fi
@for f in $$(ls conf/import-tmpl) ; do if test ! -e conf/import/$$f ; then cp conf/import-tmpl/$$f conf/import ; fi ; done
- @rm -rf conf/import/.svn
clean:
@$(MAKE) -C src/common $@
diff --git a/conf/battle/client.conf b/conf/battle/client.conf
index c832163be..eae8aad3b 100644
--- a/conf/battle/client.conf
+++ b/conf/battle/client.conf
@@ -117,4 +117,4 @@ client_sort_storage: no
// Note: Do not enable this, if you enabled commands for players,
// because the client sees multiple commands in succession as spam.
// Default: 0 (means disabled)
-client_accept_chatdori: 1
+client_accept_chatdori: 0
diff --git a/configure b/configure
index 62680923e..92f1ba69a 100755
--- a/configure
+++ b/configure
@@ -1,12 +1,10 @@
#! /bin/sh
-# From configure.in Revision: 16226 .
+# From configure.in 9d3dbd5.
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.67.
+# Generated by GNU Autoconf 2.69.
#
#
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-# Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
#
#
# This configure script is free software; the Free Software Foundation
@@ -90,6 +88,7 @@ fi
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
+as_myself=
case $0 in #((
*[\\/]* ) as_myself=$0 ;;
*) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -134,6 +133,31 @@ export LANGUAGE
# CDPATH.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+# Use a proper internal environment variable to ensure we don't fall
+ # into an infinite loop, continuously re-executing ourselves.
+ if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
+ _as_can_reexec=no; export _as_can_reexec;
+ # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+ *v*x* | *x*v* ) as_opts=-vx ;;
+ *v* ) as_opts=-v ;;
+ *x* ) as_opts=-x ;;
+ * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+as_fn_exit 255
+ fi
+ # We don't want this to propagate to other subprocesses.
+ { _as_can_reexec=; unset _as_can_reexec;}
if test "x$CONFIG_SHELL" = x; then
as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
@@ -167,7 +191,8 @@ if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
else
exitcode=1; echo positional parameters were not saved.
fi
-test x\$exitcode = x0 || exit 1"
+test x\$exitcode = x0 || exit 1
+test -x / || exit 1"
as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
@@ -212,14 +237,25 @@ IFS=$as_save_IFS
if test "x$CONFIG_SHELL" != x; then :
- # We cannot yet assume a decent shell, so we have to provide a
- # neutralization value for shells without unset; and this also
- # works around shells that cannot unset nonexistent variables.
- BASH_ENV=/dev/null
- ENV=/dev/null
- (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
+ export CONFIG_SHELL
+ # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+ *v*x* | *x*v* ) as_opts=-vx ;;
+ *v* ) as_opts=-v ;;
+ *x* ) as_opts=-x ;;
+ * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
fi
if test x$as_have_required = xno; then :
@@ -321,6 +357,14 @@ $as_echo X"$as_dir" |
} # as_fn_mkdir_p
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+ test -f "$1" && test -x "$1"
+} # as_fn_executable_p
# as_fn_append VAR VALUE
# ----------------------
# Append the text in VALUE to the end of the definition contained in VAR. Take
@@ -442,6 +486,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
chmod +x "$as_me.lineno" ||
{ $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
+ # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
+ # already done that, so ensure we don't try to do so again and fall
+ # in an infinite loop. This has already happened in practice.
+ _as_can_reexec=no; export _as_can_reexec
# Don't try to exec as it changes $[0], causing all sort of problems
# (the dirname of $[0] is not the place where we might find the
# original and so on. Autoconf is especially sensitive to this).
@@ -476,16 +524,16 @@ if (echo >conf$$.file) 2>/dev/null; then
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
+ # In both cases, we have to default to `cp -pR'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
@@ -497,28 +545,8 @@ else
as_mkdir_p=false
fi
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in #(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -555,7 +583,7 @@ PACKAGE_STRING=
PACKAGE_BUGREPORT=
PACKAGE_URL=
-ac_unique_file="rAthena"
+ac_unique_file="Hercules"
ac_unique_file="src/common/cbasetypes.h"
# Factoring default headers for most tests.
ac_includes_default="\
@@ -1087,7 +1115,7 @@ Try \`$0 --help' for more information"
$as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
$as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
;;
esac
@@ -1138,8 +1166,6 @@ target=$target_alias
if test "x$host_alias" != x; then
if test "x$build_alias" = x; then
cross_compiling=maybe
- $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
- If a cross compiler is detected then cross compile mode will be used" >&2
elif test "x$build_alias" != "x$host_alias"; then
cross_compiling=yes
fi
@@ -1408,9 +1434,9 @@ test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
configure
-generated by GNU Autoconf 2.67
+generated by GNU Autoconf 2.69
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
_ACEOF
@@ -1454,7 +1480,7 @@ sed 's/^/| /' conftest.$ac_ext >&5
ac_retval=1
fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
} # ac_fn_c_try_compile
@@ -1491,7 +1517,7 @@ sed 's/^/| /' conftest.$ac_ext >&5
ac_retval=1
fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
} # ac_fn_c_try_cpp
@@ -1504,10 +1530,10 @@ fi
ac_fn_c_check_header_mongrel ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if eval "test \"\${$3+set}\"" = set; then :
+ if eval \${$3+:} false; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
+if eval \${$3+:} false; then :
$as_echo_n "(cached) " >&6
fi
eval ac_res=\$$3
@@ -1570,7 +1596,7 @@ $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
esac
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
+if eval \${$3+:} false; then :
$as_echo_n "(cached) " >&6
else
eval "$3=\$ac_header_compiler"
@@ -1579,7 +1605,7 @@ eval ac_res=\$$3
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
$as_echo "$ac_res" >&6; }
fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
} # ac_fn_c_check_header_mongrel
@@ -1620,7 +1646,7 @@ sed 's/^/| /' conftest.$ac_ext >&5
ac_retval=$ac_status
fi
rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
} # ac_fn_c_try_run
@@ -1634,7 +1660,7 @@ ac_fn_c_check_header_compile ()
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
+if eval \${$3+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -1652,7 +1678,7 @@ fi
eval ac_res=\$$3
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
} # ac_fn_c_check_header_compile
@@ -1683,7 +1709,7 @@ $as_echo "$ac_try_echo"; } >&5
test ! -s conftest.err
} && test -s conftest$ac_exeext && {
test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
+ test -x conftest$ac_exeext
}; then :
ac_retval=0
else
@@ -1697,7 +1723,7 @@ fi
# interfere with the next link command; also delete a directory that is
# left behind by Apple's compiler. We do this before executing the actions.
rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
} # ac_fn_c_try_link
@@ -1710,7 +1736,7 @@ ac_fn_c_check_func ()
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
+if eval \${$3+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -1765,7 +1791,7 @@ fi
eval ac_res=\$$3
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
} # ac_fn_c_check_func
cat >config.log <<_ACEOF
@@ -1773,7 +1799,7 @@ This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by $as_me, which was
-generated by GNU Autoconf 2.67. Invocation command line was
+generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2031,7 +2057,7 @@ $as_echo "$as_me: loading site script $ac_site_file" >&6;}
|| { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "failed to load site script $ac_site_file
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
fi
done
@@ -2129,9 +2155,7 @@ ac_config_files="$ac_config_files 3rdparty/mt19937ar/Makefile 3rdparty/libconfig
ac_config_files="$ac_config_files src/char/Makefile src/login/Makefile"
-ac_config_files="$ac_config_files src/plugins/Makefile"
-
-ac_config_files="$ac_config_files src/map/Makefile src/tool/Makefile"
+ac_config_files="$ac_config_files src/map/Makefile src/plugins/Makefile src/tool/Makefile"
ac_config_files="$ac_config_files src/test/Makefile"
@@ -2146,7 +2170,7 @@ if test -n "$ac_tool_prefix"; then
set dummy ${ac_tool_prefix}gcc; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -2158,7 +2182,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}gcc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -2186,7 +2210,7 @@ if test -z "$ac_cv_prog_CC"; then
set dummy gcc; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
+if ${ac_cv_prog_ac_ct_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
@@ -2198,7 +2222,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="gcc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -2239,7 +2263,7 @@ if test -z "$CC"; then
set dummy ${ac_tool_prefix}cc; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -2251,7 +2275,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}cc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -2279,7 +2303,7 @@ if test -z "$CC"; then
set dummy cc; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -2292,7 +2316,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
ac_prog_rejected=yes
continue
@@ -2338,7 +2362,7 @@ if test -z "$CC"; then
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -2350,7 +2374,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -2382,7 +2406,7 @@ do
set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
+if ${ac_cv_prog_ac_ct_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
@@ -2394,7 +2418,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -2437,7 +2461,7 @@ fi
test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
# Provide some information about the compiler.
$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
@@ -2552,7 +2576,7 @@ sed 's/^/| /' conftest.$ac_ext >&5
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error 77 "C compiler cannot create executables
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
@@ -2595,7 +2619,7 @@ else
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
fi
rm -f conftest conftest$ac_cv_exeext
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
@@ -2654,7 +2678,7 @@ $as_echo "$ac_try_echo"; } >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot run C compiled programs.
If you meant to cross compile, use \`--host'.
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
fi
fi
fi
@@ -2665,7 +2689,7 @@ rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
ac_clean_files=$ac_clean_files_save
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
$as_echo_n "checking for suffix of object files... " >&6; }
-if test "${ac_cv_objext+set}" = set; then :
+if ${ac_cv_objext+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -2706,7 +2730,7 @@ sed 's/^/| /' conftest.$ac_ext >&5
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot compute suffix of object files: cannot compile
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
fi
rm -f conftest.$ac_cv_objext conftest.$ac_ext
fi
@@ -2716,7 +2740,7 @@ OBJEXT=$ac_cv_objext
ac_objext=$OBJEXT
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if test "${ac_cv_c_compiler_gnu+set}" = set; then :
+if ${ac_cv_c_compiler_gnu+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -2753,7 +2777,7 @@ ac_test_CFLAGS=${CFLAGS+set}
ac_save_CFLAGS=$CFLAGS
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if test "${ac_cv_prog_cc_g+set}" = set; then :
+if ${ac_cv_prog_cc_g+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_save_c_werror_flag=$ac_c_werror_flag
@@ -2831,7 +2855,7 @@ else
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if test "${ac_cv_prog_cc_c89+set}" = set; then :
+if ${ac_cv_prog_cc_c89+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_cv_prog_cc_c89=no
@@ -2840,8 +2864,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdarg.h>
#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
+struct stat;
/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
struct buf { int x; };
FILE * (*rcsopen) (struct buf *, struct stat *, int);
@@ -2939,7 +2962,7 @@ if test -n "$CPP" && test -d "$CPP"; then
CPP=
fi
if test -z "$CPP"; then
- if test "${ac_cv_prog_CPP+set}" = set; then :
+ if ${ac_cv_prog_CPP+:} false; then :
$as_echo_n "(cached) " >&6
else
# Double quotes because CPP needs to be expanded
@@ -3055,7 +3078,7 @@ else
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
fi
ac_ext=c
@@ -3067,7 +3090,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if test "${ac_cv_path_GREP+set}" = set; then :
+if ${ac_cv_path_GREP+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -z "$GREP"; then
@@ -3081,7 +3104,7 @@ do
for ac_prog in grep ggrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+ as_fn_executable_p "$ac_path_GREP" || continue
# Check for GNU ac_path_GREP and select it if it is found.
# Check for GNU $ac_path_GREP
case `"$ac_path_GREP" --version 2>&1` in
@@ -3130,7 +3153,7 @@ $as_echo "$ac_cv_path_GREP" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
$as_echo_n "checking for egrep... " >&6; }
-if test "${ac_cv_path_EGREP+set}" = set; then :
+if ${ac_cv_path_EGREP+:} false; then :
$as_echo_n "(cached) " >&6
else
if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
@@ -3147,7 +3170,7 @@ do
for ac_prog in egrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+ as_fn_executable_p "$ac_path_EGREP" || continue
# Check for GNU ac_path_EGREP and select it if it is found.
# Check for GNU $ac_path_EGREP
case `"$ac_path_EGREP" --version 2>&1` in
@@ -3197,7 +3220,7 @@ $as_echo "$ac_cv_path_EGREP" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
$as_echo_n "checking for ANSI C header files... " >&6; }
-if test "${ac_cv_header_stdc+set}" = set; then :
+if ${ac_cv_header_stdc+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -3326,7 +3349,7 @@ done
ac_fn_c_check_header_mongrel "$LINENO" "minix/config.h" "ac_cv_header_minix_config_h" "$ac_includes_default"
-if test "x$ac_cv_header_minix_config_h" = x""yes; then :
+if test "x$ac_cv_header_minix_config_h" = xyes; then :
MINIX=yes
else
MINIX=
@@ -3348,14 +3371,14 @@ $as_echo "#define _MINIX 1" >>confdefs.h
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5
$as_echo_n "checking whether it is safe to define __EXTENSIONS__... " >&6; }
-if test "${ac_cv_safe_to_define___extensions__+set}" = set; then :
+if ${ac_cv_safe_to_define___extensions__+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-# define __EXTENSIONS__ 1
- $ac_includes_default
+# define __EXTENSIONS__ 1
+ $ac_includes_default
int
main ()
{
@@ -3401,7 +3424,7 @@ if test "${enable_manager+set}" = set; then :
"dmalloc");;
"gcollect");;
"bcheck");;
- *) as_fn_error $? "unknown memory manager '$enableval'... stopping" "$LINENO" 5 ;;
+ *) as_fn_error $? "unknown memory manager '$enableval'... stopping" "$LINENO" 5;;
esac
else
@@ -3435,7 +3458,7 @@ if test "${enable_debug+set}" = set; then :
"no");;
"yes");;
"gdb");;
- *) as_fn_error $? "invalid argument --enable-debug=$enableval... stopping" "$LINENO" 5 ;;
+ *) as_fn_error $? "invalid argument --enable-debug=$enableval... stopping" "$LINENO" 5;;
esac
else
@@ -3454,7 +3477,7 @@ if test "${enable_buildbot+set}" = set; then :
case $enableval in
"no");;
"yes");;
- *) as_fn_error $? "invalid argument --enable-buildbot=$enableval... stopping" "$LINENO" 5 ;;
+ *) as_fn_error $? "invalid argument --enable-buildbot=$enableval... stopping" "$LINENO" 5;;
esac
else
@@ -3487,7 +3510,7 @@ if test "${enable_profiler+set}" = set; then :
case $enableval in
"no");;
"gprof");;
- *) as_fn_error $? "invalid argument --enable-profiler=$enableval... stopping" "$LINENO" 5 ;;
+ *) as_fn_error $? "invalid argument --enable-profiler=$enableval... stopping" "$LINENO" 5;;
esac
else
@@ -3507,7 +3530,7 @@ if test "${enable_64bit+set}" = set; then :
case $enableval in
"no");;
"yes");;
- *) as_fn_error $? "invalid argument --enable-64bit=$enableval... stopping" "$LINENO" 5 ;;
+ *) as_fn_error $? "invalid argument --enable-64bit=$enableval... stopping" "$LINENO" 5;;
esac
else
@@ -3527,7 +3550,7 @@ if test "${enable_lto+set}" = set; then :
case $enableval in
"no");;
"yes");;
- *) as_fn_error $? "invalid argument --enable-lto=$disableval... stopping" "$LINENO" 5 ;;
+ *) as_fn_error $? "invalid argument --enable-lto=$disableval... stopping" "$LINENO" 5;;
esac
else
@@ -3675,7 +3698,7 @@ fi
$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
set x ${MAKE-make}
ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\"" = set; then :
+if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
$as_echo_n "(cached) " >&6
else
cat >conftest.make <<\_ACEOF
@@ -3712,7 +3735,7 @@ if test -n "$ac_tool_prefix"; then
set dummy ${ac_tool_prefix}gcc; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -3724,7 +3747,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}gcc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3752,7 +3775,7 @@ if test -z "$ac_cv_prog_CC"; then
set dummy gcc; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
+if ${ac_cv_prog_ac_ct_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
@@ -3764,7 +3787,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="gcc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3805,7 +3828,7 @@ if test -z "$CC"; then
set dummy ${ac_tool_prefix}cc; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -3817,7 +3840,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}cc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3845,7 +3868,7 @@ if test -z "$CC"; then
set dummy cc; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -3858,7 +3881,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
ac_prog_rejected=yes
continue
@@ -3904,7 +3927,7 @@ if test -z "$CC"; then
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -3916,7 +3939,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3948,7 +3971,7 @@ do
set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
+if ${ac_cv_prog_ac_ct_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
@@ -3960,7 +3983,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4003,7 +4026,7 @@ fi
test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
# Provide some information about the compiler.
$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
@@ -4032,7 +4055,7 @@ done
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if test "${ac_cv_c_compiler_gnu+set}" = set; then :
+if ${ac_cv_c_compiler_gnu+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -4069,7 +4092,7 @@ ac_test_CFLAGS=${CFLAGS+set}
ac_save_CFLAGS=$CFLAGS
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if test "${ac_cv_prog_cc_g+set}" = set; then :
+if ${ac_cv_prog_cc_g+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_save_c_werror_flag=$ac_c_werror_flag
@@ -4147,7 +4170,7 @@ else
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if test "${ac_cv_prog_cc_c89+set}" = set; then :
+if ${ac_cv_prog_cc_c89+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_cv_prog_cc_c89=no
@@ -4156,8 +4179,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdarg.h>
#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
+struct stat;
/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
struct buf { int x; };
FILE * (*rcsopen) (struct buf *, struct stat *, int);
@@ -4254,7 +4276,7 @@ if test -n "$CPP" && test -d "$CPP"; then
CPP=
fi
if test -z "$CPP"; then
- if test "${ac_cv_prog_CPP+set}" = set; then :
+ if ${ac_cv_prog_CPP+:} false; then :
$as_echo_n "(cached) " >&6
else
# Double quotes because CPP needs to be expanded
@@ -4370,7 +4392,7 @@ else
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
fi
ac_ext=c
@@ -4383,7 +4405,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
set dummy ar; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_AR+set}" = set; then :
+if ${ac_cv_path_AR+:} false; then :
$as_echo_n "(cached) " >&6
else
case $AR in
@@ -4397,7 +4419,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_AR="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4429,13 +4451,11 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
CFLAGS="$CFLAGS -pipe -ffast-math -Wall -Wno-sign-compare"
CPPFLAGS="$CPPFLAGS -I../common"
-# flags used for compiling shared objects
-SOFLAGS=""
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
$as_echo_n "checking whether byte ordering is bigendian... " >&6; }
-if test "${ac_cv_c_bigendian+set}" = set; then :
+if ${ac_cv_c_bigendian+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_cv_c_bigendian=unknown
@@ -4643,7 +4663,7 @@ fi
$as_echo "$ac_cv_c_bigendian" >&6; }
case $ac_cv_c_bigendian in #(
yes)
- as_fn_error $? "bigendian is not supported... stopping" "$LINENO" 5 ;; #(
+ as_fn_error $? "bigendian is not supported... stopping" "$LINENO" 5;; #(
no)
;; #(
universal)
@@ -4755,7 +4775,7 @@ if test "$cross_compiling" = yes; then :
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -4956,8 +4976,8 @@ CFLAGS="$OLD_CFLAGS"
#
# option for shared objects
#
-echo "$as_me:$LINENO: checking how to make shared objects" >&5
-echo $ECHO_N "checking how to make shared objects... $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to make shared objects" >&5
+$as_echo_n "checking how to make shared objects... " >&6; }
OLD_CFLAGS="$CFLAGS"
compiler_shared_objects=""
if test "$compiler_supports_pic" = "yes" ; then
@@ -4965,7 +4985,8 @@ if test "$compiler_supports_pic" = "yes" ; then
fi
# default
CFLAGS="$my_shared_test_flags -shared"
-cat >conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
int bar = 0;
@@ -4975,42 +4996,18 @@ cat >conftest.$ac_ext <<_ACEOF
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_link "$LINENO"; then :
compiler_shared_objects="-shared"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
# BeOS specific
CFLAGS="$my_shared_test_flags -nostart"
-cat >conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
int bar = 0;
@@ -5020,62 +5017,39 @@ cat >conftest.$ac_ext <<_ACEOF
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_link "$LINENO"; then :
compiler_shared_objects="-nostart"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
my_shared_test_flags=""
CFLAGS="$OLD_CFLAGS"
if test "$compiler_supports_shared_objects" = "no" ; then
- echo "$as_me:$LINENO: result: not supported" >&5
-echo "${ECHO_T}not supported" >&6
- { echo "$as_me:$LINENO: compiler is unable to generate shared objects, disabled plugins (optional)" >&5
-echo "$as_me: compiler is unable to generate shared objects, disabled plugins (optional)" >&6;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not supported" >&5
+$as_echo "not supported" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: compiler is unable to generate shared objects, disabled plugins (optional)" >&5
+$as_echo "$as_me: compiler is unable to generate shared objects, disabled plugins (optional)" >&6;}
WITH_PLUGINS="no"
else
- echo "$as_me:$LINENO: result: $compiler_shared_objects" >&5
-echo "${ECHO_T}$compiler_shared_objects" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compiler_shared_objects" >&5
+$as_echo "$compiler_shared_objects" >&6; }
SOFLAGS="$SOFLAGS $compiler_shared_objects"
+
#
# shared objects need position independent code; some platforms emit
# it always, others need -fPIC
#
-echo "$as_me:$LINENO: checking whether $CC needs -fPIC for shared objects" >&5
-echo $ECHO_N "checking whether $CC needs -fPIC for shared objects... $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC needs -fPIC for shared objects" >&5
+$as_echo_n "checking whether $CC needs -fPIC for shared objects... " >&6; }
OLD_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $SOFLAGS"
WITH_PLUGINS="yes"
-cat >conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
int bar = 0;
@@ -5085,42 +5059,19 @@ cat >conftest.$ac_ext <<_ACEOF
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_link "$LINENO"; then :
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
CFLAGS="$OLD_CFLAGS"
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
if test "$compiler_supports_pic" = "yes" ; then
# Verify if -shared really fails due to lack of -fPIC or something else
CFLAGS="$CFLAGS -fPIC"
- cat >conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
int bar = 0;
@@ -5130,64 +5081,40 @@ sed 's/^/| /' conftest.$ac_ext >&5
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_link "$LINENO"; then :
- echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
CFLAGS="$OLD_CFLAGS -fPIC"
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- echo "$as_me:$LINENO: result: no, but fails for another reason" >&5
-echo "${ECHO_T}no, but fails for another reason" >&6
- { { echo "$as_me:$LINENO: error: compiler is unable to compile shared objects for an unhandled reason, please report this with attached config.log... stopping" >&5
-echo "$as_me: error: compiler is unable to compile shared objects for an unhandled reason, please report this with attached config.log... stopping" >&2;}
- { (exit 1); exit 1; }; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, but fails for another reason" >&5
+$as_echo "no, but fails for another reason" >&6; }
+ as_fn_error $? "compiler is unable to compile shared objects for an unhandled reason, please report this with attached config.log... stopping" "$LINENO" 5
fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
else
# Disable compilation of plugins (optional), so 'make all' does not fail
- echo "$as_me:$LINENO: result: yes, but unsupported" >&5
-echo "${ECHO_T}yes, but unsupported" >&6
- { echo "$as_me:$LINENO: compiler is unable to generate position independent code, disabled plugins (optional)" >&5
-echo "$as_me: compiler is unable to generate position independent code, disabled plugins (optional)" >&6;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, but unsupported" >&5
+$as_echo "yes, but unsupported" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: compiler is unable to generate position independent code, disabled plugins (optional)" >&5
+$as_echo "$as_me: compiler is unable to generate position independent code, disabled plugins (optional)" >&6;}
WITH_PLUGINS="no"
fi
fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
+
+
#
# -O2 implies -fstrict-aliasing, but the code is not safe for that
#
@@ -5222,7 +5149,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
# setrlimit - used to set the socket limit
#
ac_fn_c_check_func "$LINENO" "setrlimit" "ac_cv_func_setrlimit"
-if test "x$ac_cv_func_setrlimit" = x""yes; then :
+if test "x$ac_cv_func_setrlimit" = xyes; then :
CFLAGS="$CFLAGS -DHAVE_SETRLIMIT"
fi
@@ -5232,7 +5159,7 @@ fi
# strnlen - string length with upper scan bound
#
ac_fn_c_check_func "$LINENO" "strnlen" "ac_cv_func_strnlen"
-if test "x$ac_cv_func_strnlen" = x""yes; then :
+if test "x$ac_cv_func_strnlen" = xyes; then :
CFLAGS="$CFLAGS -DHAVE_STRNLEN"
fi
@@ -5241,7 +5168,7 @@ fi
for ac_func in uselocale
do :
ac_fn_c_check_func "$LINENO" "uselocale" "ac_cv_func_uselocale"
-if test "x$ac_cv_func_uselocale" = x""yes; then :
+if test "x$ac_cv_func_uselocale" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_USELOCALE 1
_ACEOF
@@ -5252,7 +5179,7 @@ done
for ac_func in newlocale
do :
ac_fn_c_check_func "$LINENO" "newlocale" "ac_cv_func_newlocale"
-if test "x$ac_cv_func_newlocale" = x""yes; then :
+if test "x$ac_cv_func_newlocale" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_NEWLOCALE 1
_ACEOF
@@ -5263,7 +5190,7 @@ done
for ac_func in freelocale
do :
ac_fn_c_check_func "$LINENO" "freelocale" "ac_cv_func_freelocale"
-if test "x$ac_cv_func_freelocale" = x""yes; then :
+if test "x$ac_cv_func_freelocale" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_FREELOCALE 1
_ACEOF
@@ -5274,7 +5201,7 @@ done
for ac_header in xlocale.h
do :
ac_fn_c_check_header_mongrel "$LINENO" "xlocale.h" "ac_cv_header_xlocale_h" "$ac_includes_default"
-if test "x$ac_cv_header_xlocale_h" = x""yes; then :
+if test "x$ac_cv_header_xlocale_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_XLOCALE_H 1
_ACEOF
@@ -5297,7 +5224,7 @@ case $enable_manager in
"memwatch")
CFLAGS="$CFLAGS -DMEMWATCH"
ac_fn_c_check_header_mongrel "$LINENO" "memwatch.h" "ac_cv_header_memwatch_h" "$ac_includes_default"
-if test "x$ac_cv_header_memwatch_h" = x""yes; then :
+if test "x$ac_cv_header_memwatch_h" = xyes; then :
else
as_fn_error $? "memwatch header not found... stopping" "$LINENO" 5
@@ -5309,7 +5236,7 @@ fi
CFLAGS="$CFLAGS -DDMALLOC -DDMALLOC_FUNC_CHECK"
LIBS="$LIBS -ldmalloc"
ac_fn_c_check_header_mongrel "$LINENO" "dmalloc.h" "ac_cv_header_dmalloc_h" "$ac_includes_default"
-if test "x$ac_cv_header_dmalloc_h" = x""yes; then :
+if test "x$ac_cv_header_dmalloc_h" = xyes; then :
else
as_fn_error $? "dmalloc header not found... stopping" "$LINENO" 5
@@ -5321,7 +5248,7 @@ fi
CFLAGS="$CFLAGS -DGCOLLECT"
LIBS="$LIBS -lgc"
ac_fn_c_check_header_mongrel "$LINENO" "gc.h" "ac_cv_header_gc_h" "$ac_includes_default"
-if test "x$ac_cv_header_gc_h" = x""yes; then :
+if test "x$ac_cv_header_gc_h" = xyes; then :
else
as_fn_error $? "gcollect header not found... stopping" "$LINENO" 5
@@ -5407,7 +5334,7 @@ if test -n "${ZLIB_HOME}" ; then
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inflateEnd in -lz" >&5
$as_echo_n "checking for inflateEnd in -lz... " >&6; }
-if test "${ac_cv_lib_z_inflateEnd+set}" = set; then :
+if ${ac_cv_lib_z_inflateEnd+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -5441,7 +5368,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_inflateEnd" >&5
$as_echo "$ac_cv_lib_z_inflateEnd" >&6; }
-if test "x$ac_cv_lib_z_inflateEnd" = x""yes; then :
+if test "x$ac_cv_lib_z_inflateEnd" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_LIBZ 1
_ACEOF
@@ -5453,7 +5380,7 @@ else
fi
ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_zlib_h" = x""yes; then :
+if test "x$ac_cv_header_zlib_h" = xyes; then :
else
as_fn_error $? "zlib header not found, please specify the correct path with --with-zlib=DIR... stopping" "$LINENO" 5
@@ -5467,7 +5394,7 @@ fi
#
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing sqrt" >&5
$as_echo_n "checking for library containing sqrt... " >&6; }
-if test "${ac_cv_search_sqrt+set}" = set; then :
+if ${ac_cv_search_sqrt+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -5501,11 +5428,11 @@ for ac_lib in '' m; do
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if test "${ac_cv_search_sqrt+set}" = set; then :
+ if ${ac_cv_search_sqrt+:} false; then :
break
fi
done
-if test "${ac_cv_search_sqrt+set}" = set; then :
+if ${ac_cv_search_sqrt+:} false; then :
else
ac_cv_search_sqrt=no
@@ -5530,7 +5457,7 @@ fi
#
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing clock_gettime" >&5
$as_echo_n "checking for library containing clock_gettime... " >&6; }
-if test "${ac_cv_search_clock_gettime+set}" = set; then :
+if ${ac_cv_search_clock_gettime+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -5564,11 +5491,11 @@ for ac_lib in '' rt; do
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if test "${ac_cv_search_clock_gettime+set}" = set; then :
+ if ${ac_cv_search_clock_gettime+:} false; then :
break
fi
done
-if test "${ac_cv_search_clock_gettime+set}" = set; then :
+if ${ac_cv_search_clock_gettime+:} false; then :
else
ac_cv_search_clock_gettime=no
@@ -5644,7 +5571,7 @@ fi
#
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_create in -lpthread" >&5
$as_echo_n "checking for pthread_create in -lpthread... " >&6; }
-if test "${ac_cv_lib_pthread_pthread_create+set}" = set; then :
+if ${ac_cv_lib_pthread_pthread_create+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -5678,7 +5605,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_create" >&5
$as_echo "$ac_cv_lib_pthread_pthread_create" >&6; }
-if test "x$ac_cv_lib_pthread_pthread_create" = x""yes; then :
+if test "x$ac_cv_lib_pthread_pthread_create" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_LIBPTHREAD 1
_ACEOF
@@ -5691,7 +5618,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_sigmask in -lpthread" >&5
$as_echo_n "checking for pthread_sigmask in -lpthread... " >&6; }
-if test "${ac_cv_lib_pthread_pthread_sigmask+set}" = set; then :
+if ${ac_cv_lib_pthread_pthread_sigmask+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -5725,7 +5652,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_sigmask" >&5
$as_echo "$ac_cv_lib_pthread_pthread_sigmask" >&6; }
-if test "x$ac_cv_lib_pthread_pthread_sigmask" = x""yes; then :
+if test "x$ac_cv_lib_pthread_pthread_sigmask" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_LIBPTHREAD 1
_ACEOF
@@ -5738,7 +5665,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_attr_init in -lpthread" >&5
$as_echo_n "checking for pthread_attr_init in -lpthread... " >&6; }
-if test "${ac_cv_lib_pthread_pthread_attr_init+set}" = set; then :
+if ${ac_cv_lib_pthread_pthread_attr_init+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -5772,7 +5699,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_attr_init" >&5
$as_echo "$ac_cv_lib_pthread_pthread_attr_init" >&6; }
-if test "x$ac_cv_lib_pthread_pthread_attr_init" = x""yes; then :
+if test "x$ac_cv_lib_pthread_pthread_attr_init" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_LIBPTHREAD 1
_ACEOF
@@ -5785,7 +5712,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_attr_setstacksize in -lpthread" >&5
$as_echo_n "checking for pthread_attr_setstacksize in -lpthread... " >&6; }
-if test "${ac_cv_lib_pthread_pthread_attr_setstacksize+set}" = set; then :
+if ${ac_cv_lib_pthread_pthread_attr_setstacksize+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -5819,7 +5746,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_attr_setstacksize" >&5
$as_echo "$ac_cv_lib_pthread_pthread_attr_setstacksize" >&6; }
-if test "x$ac_cv_lib_pthread_pthread_attr_setstacksize" = x""yes; then :
+if test "x$ac_cv_lib_pthread_pthread_attr_setstacksize" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_LIBPTHREAD 1
_ACEOF
@@ -5832,7 +5759,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_attr_destroy in -lpthread" >&5
$as_echo_n "checking for pthread_attr_destroy in -lpthread... " >&6; }
-if test "${ac_cv_lib_pthread_pthread_attr_destroy+set}" = set; then :
+if ${ac_cv_lib_pthread_pthread_attr_destroy+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -5866,7 +5793,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_attr_destroy" >&5
$as_echo "$ac_cv_lib_pthread_pthread_attr_destroy" >&6; }
-if test "x$ac_cv_lib_pthread_pthread_attr_destroy" = x""yes; then :
+if test "x$ac_cv_lib_pthread_pthread_attr_destroy" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_LIBPTHREAD 1
_ACEOF
@@ -5879,7 +5806,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_cancel in -lpthread" >&5
$as_echo_n "checking for pthread_cancel in -lpthread... " >&6; }
-if test "${ac_cv_lib_pthread_pthread_cancel+set}" = set; then :
+if ${ac_cv_lib_pthread_pthread_cancel+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -5913,7 +5840,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_cancel" >&5
$as_echo "$ac_cv_lib_pthread_pthread_cancel" >&6; }
-if test "x$ac_cv_lib_pthread_pthread_cancel" = x""yes; then :
+if test "x$ac_cv_lib_pthread_pthread_cancel" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_LIBPTHREAD 1
_ACEOF
@@ -5926,7 +5853,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_join in -lpthread" >&5
$as_echo_n "checking for pthread_join in -lpthread... " >&6; }
-if test "${ac_cv_lib_pthread_pthread_join+set}" = set; then :
+if ${ac_cv_lib_pthread_pthread_join+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -5960,7 +5887,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_join" >&5
$as_echo "$ac_cv_lib_pthread_pthread_join" >&6; }
-if test "x$ac_cv_lib_pthread_pthread_join" = x""yes; then :
+if test "x$ac_cv_lib_pthread_pthread_join" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_LIBPTHREAD 1
_ACEOF
@@ -5984,7 +5911,7 @@ if test -z "$MYSQL_CONFIG_HOME"; then
set dummy mysql_config; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MYSQL_CONFIG_HOME+set}" = set; then :
+if ${ac_cv_path_MYSQL_CONFIG_HOME+:} false; then :
$as_echo_n "(cached) " >&6
else
case $MYSQL_CONFIG_HOME in
@@ -5998,7 +5925,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_MYSQL_CONFIG_HOME="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -6039,7 +5966,7 @@ MYSQL_OLD_LDFLAGS="$LDFLAGS" ; LDFLAGS="$LDFLAGS $MYSQL_LIBS"
MYSQL_OLD_CPPFLAGS="$CPPFLAGS" ; CPPFLAGS="$CPPFLAGS $MYSQL_CFLAGS"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for mysql_init in -lmysqlclient" >&5
$as_echo_n "checking for mysql_init in -lmysqlclient... " >&6; }
-if test "${ac_cv_lib_mysqlclient_mysql_init+set}" = set; then :
+if ${ac_cv_lib_mysqlclient_mysql_init+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -6073,12 +6000,12 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mysqlclient_mysql_init" >&5
$as_echo "$ac_cv_lib_mysqlclient_mysql_init" >&6; }
-if test "x$ac_cv_lib_mysqlclient_mysql_init" = x""yes; then :
+if test "x$ac_cv_lib_mysqlclient_mysql_init" = xyes; then :
HAVE_MYSQL="yes"
fi
ac_fn_c_check_header_mongrel "$LINENO" "mysql.h" "ac_cv_header_mysql_h" "$ac_includes_default"
-if test "x$ac_cv_header_mysql_h" = x""yes; then :
+if test "x$ac_cv_header_mysql_h" = xyes; then :
else
HAVE_MYSQL=""
@@ -6119,7 +6046,7 @@ else
if test -z "$PCRE_HOME" ; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pcre_study in -lpcre" >&5
$as_echo_n "checking for pcre_study in -lpcre... " >&6; }
-if test "${ac_cv_lib_pcre_pcre_study+set}" = set; then :
+if ${ac_cv_lib_pcre_pcre_study+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -6153,7 +6080,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pcre_pcre_study" >&5
$as_echo "$ac_cv_lib_pcre_pcre_study" >&6; }
-if test "x$ac_cv_lib_pcre_pcre_study" = x""yes; then :
+if test "x$ac_cv_lib_pcre_pcre_study" = xyes; then :
HAVE_PCRE="yes"
fi
@@ -6165,7 +6092,7 @@ fi
PCRE_OLD_CPPFLAGS="$CPPFLAGS" ; CPPFLAGS="$CPPFLAGS -I$PCRE_HOME/include"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pcre_compile in -lpcre" >&5
$as_echo_n "checking for pcre_compile in -lpcre... " >&6; }
-if test "${ac_cv_lib_pcre_pcre_compile+set}" = set; then :
+if ${ac_cv_lib_pcre_pcre_compile+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -6199,7 +6126,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pcre_pcre_compile" >&5
$as_echo "$ac_cv_lib_pcre_pcre_compile" >&6; }
-if test "x$ac_cv_lib_pcre_pcre_compile" = x""yes; then :
+if test "x$ac_cv_lib_pcre_pcre_compile" = xyes; then :
HAVE_PCRE="yes"
fi
@@ -6345,10 +6272,21 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
:end' >>confcache
if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
if test -w "$cache_file"; then
- test "x$cache_file" != "x/dev/null" &&
+ if test "x$cache_file" != "x/dev/null"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
$as_echo "$as_me: updating cache $cache_file" >&6;}
- cat confcache >$cache_file
+ if test ! -f "$cache_file" || test -h "$cache_file"; then
+ cat confcache >"$cache_file"
+ else
+ case $cache_file in #(
+ */* | ?:*)
+ mv -f confcache "$cache_file"$$ &&
+ mv -f "$cache_file"$$ "$cache_file" ;; #(
+ *)
+ mv -f confcache "$cache_file" ;;
+ esac
+ fi
+ fi
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
@@ -6417,7 +6355,7 @@ LTLIBOBJS=$ac_ltlibobjs
-: ${CONFIG_STATUS=./config.status}
+: "${CONFIG_STATUS=./config.status}"
ac_write_fail=0
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
@@ -6518,6 +6456,7 @@ fi
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
+as_myself=
case $0 in #((
*[\\/]* ) as_myself=$0 ;;
*) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -6713,16 +6652,16 @@ if (echo >conf$$.file) 2>/dev/null; then
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
+ # In both cases, we have to default to `cp -pR'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
@@ -6782,28 +6721,16 @@ else
as_mkdir_p=false
fi
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in #(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+ test -f "$1" && test -x "$1"
+} # as_fn_executable_p
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -6825,7 +6752,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# values after options handling.
ac_log="
This file was extended by $as_me, which was
-generated by GNU Autoconf 2.67. Invocation command line was
+generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
@@ -6878,10 +6805,10 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
config.status
-configured by $0, generated by GNU Autoconf 2.67,
+configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
@@ -6958,7 +6885,7 @@ fi
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
if \$ac_cs_recheck; then
- set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+ set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
shift
\$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
CONFIG_SHELL='$SHELL'
@@ -6994,11 +6921,11 @@ do
"src/char/Makefile") CONFIG_FILES="$CONFIG_FILES src/char/Makefile" ;;
"src/login/Makefile") CONFIG_FILES="$CONFIG_FILES src/login/Makefile" ;;
"src/map/Makefile") CONFIG_FILES="$CONFIG_FILES src/map/Makefile" ;;
- "src/plugins/Makefile") CONFIG_FILES="$CONFIG_FILES src/plugins/Makefile" ;;
+ "src/plugins/Makefile") CONFIG_FILES="$CONFIG_FILES src/plugins/Makefile" ;;
"src/tool/Makefile") CONFIG_FILES="$CONFIG_FILES src/tool/Makefile" ;;
"src/test/Makefile") CONFIG_FILES="$CONFIG_FILES src/test/Makefile" ;;
- *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5 ;;
+ *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
esac
done
@@ -7019,9 +6946,10 @@ fi
# after its creation but before its name has been assigned to `$tmp'.
$debug ||
{
- tmp=
+ tmp= ac_tmp=
trap 'exit_status=$?
- { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
+ : "${ac_tmp:=$tmp}"
+ { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
' 0
trap 'as_fn_exit 1' 1 2 13 15
}
@@ -7029,12 +6957,13 @@ $debug ||
{
tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
- test -n "$tmp" && test -d "$tmp"
+ test -d "$tmp"
} ||
{
tmp=./conf$$-$RANDOM
(umask 077 && mkdir "$tmp")
} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
+ac_tmp=$tmp
# Set up the scripts for CONFIG_FILES section.
# No need to generate them if there are no CONFIG_FILES.
@@ -7056,7 +6985,7 @@ else
ac_cs_awk_cr=$ac_cr
fi
-echo 'BEGIN {' >"$tmp/subs1.awk" &&
+echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
_ACEOF
@@ -7084,7 +7013,7 @@ done
rm -f conf$$subs.sh
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$tmp/subs1.awk" <<\\_ACAWK &&
+cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
_ACEOF
sed -n '
h
@@ -7132,7 +7061,7 @@ t delim
rm -f conf$$subs.awk
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
_ACAWK
-cat >>"\$tmp/subs1.awk" <<_ACAWK &&
+cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
for (key in S) S_is_set[key] = 1
FS = ""
@@ -7164,7 +7093,7 @@ if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
else
cat
-fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
+fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
|| as_fn_error $? "could not setup config files machinery" "$LINENO" 5
_ACEOF
@@ -7204,7 +7133,7 @@ do
esac
case $ac_mode$ac_tag in
:[FHL]*:*);;
- :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5 ;;
+ :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
:[FH]-) ac_tag=-:-;;
:[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
esac
@@ -7223,7 +7152,7 @@ do
for ac_f
do
case $ac_f in
- -) ac_f="$tmp/stdin";;
+ -) ac_f="$ac_tmp/stdin";;
*) # Look for the file first in the build tree, then in the source tree
# (if the path is not absolute). The absolute path cannot be DOS-style,
# because $ac_f cannot contain `:'.
@@ -7232,7 +7161,7 @@ do
[\\/$]*) false;;
*) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
esac ||
- as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5 ;;
+ as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
esac
case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
as_fn_append ac_file_inputs " '$ac_f'"
@@ -7258,8 +7187,8 @@ $as_echo "$as_me: creating $ac_file" >&6;}
esac
case $ac_tag in
- *:-:* | *:-) cat >"$tmp/stdin" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
+ *:-:* | *:-) cat >"$ac_tmp/stdin" \
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
esac
;;
esac
@@ -7384,21 +7313,22 @@ s&@abs_builddir@&$ac_abs_builddir&;t t
s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
$ac_datarootdir_hack
"
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
+eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
+ >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
- { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
- { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
+ { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
+ { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
+ "$ac_tmp/out"`; test -z "$ac_out"; } &&
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
which seems to be undefined. Please make sure it is defined" >&5
$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
which seems to be undefined. Please make sure it is defined" >&2;}
- rm -f "$tmp/stdin"
+ rm -f "$ac_tmp/stdin"
case $ac_file in
- -) cat "$tmp/out" && rm -f "$tmp/out";;
- *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
+ -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
+ *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
esac \
|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
;;
diff --git a/configure.in b/configure.in
index d98badbfb..9e13e89ab 100644
--- a/configure.in
+++ b/configure.in
@@ -1,8 +1,8 @@
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
-AC_INIT(rAthena)
-AC_REVISION($Revision$)
+AC_INIT(Hercules)
+AC_REVISION([m4_esyscmd_s([type git >/dev/null 2>&1 && git describe --always 2>/dev/null || echo '(unknown version)'])])
AC_PREREQ([2.59])
AC_CONFIG_SRCDIR([src/common/cbasetypes.h])
AC_CONFIG_FILES([Makefile src/common/Makefile])
@@ -371,12 +371,12 @@ fi
#
AC_MSG_CHECKING([whether $CC produces 32bit code])
AC_RUN_IFELSE(
- [
+ [AC_LANG_SOURCE([
int main(int argc, char **argv){
if(sizeof(void*) == 4) return 0;
else return 1;
}
- ],
+ ])],
[
AC_MSG_RESULT([yes])
CFLAGS="$CFLAGS -march=i686"
@@ -397,14 +397,14 @@ AC_RUN_IFELSE(
#
AC_MSG_CHECKING([whether $CC supports __thread specifier (TLS)])
AC_RUN_IFELSE(
- [
+ [AC_LANG_SOURCE([
__thread int g_Test = -1;
int main(int argc, char **argv){
g_Test = 0;
return g_Test;
}
- ],
+ ])],
[
AC_MSG_RESULT([yes])
CFLAGS="$CFLAGS -DHAS_TLS"
@@ -419,7 +419,7 @@ AC_MSG_CHECKING([whether $CC supports -Wno-unused-parameter])
OLD_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Wno-unused-parameter"
AC_COMPILE_IFELSE(
- [int foo;],
+ [AC_LANG_SOURCE([int foo;])],
[AC_MSG_RESULT([yes])],
[
AC_MSG_RESULT([no])
@@ -441,11 +441,11 @@ if test "$enable_lto" != "no" ; then
AC_MSG_CHECKING([whether $CC supports -flto])
AC_RUN_IFELSE(
- [
+ [AC_LANG_SOURCE([
int main(int argc, char **argv){
return 0;
}
- ],
+ ])],
[
AC_MSG_RESULT([yes])
],
@@ -466,7 +466,7 @@ AC_MSG_CHECKING([whether $CC supports -Wno-pointer-sign])
OLD_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Wno-pointer-sign"
AC_COMPILE_IFELSE(
- [int foo;],
+ [AC_LANG_SOURCE([int foo;])],
[
AC_MSG_RESULT([yes])
AC_MSG_CHECKING([whether $CC can actually use -Wno-pointer-sign])
@@ -474,7 +474,7 @@ AC_COMPILE_IFELSE(
# Note: -Werror must be before -Wno-pointer-sign, otherwise it does not do anything
CFLAGS="$OLD_CFLAGS -Werror -Wno-pointer-sign"
AC_COMPILE_IFELSE(
- [int foo;],
+ [AC_LANG_SOURCE([int foo;])],
[
AC_MSG_RESULT([yes])
CFLAGS="$OLD_CFLAGS -Wno-pointer-sign"
@@ -496,7 +496,7 @@ AC_MSG_CHECKING([whether $CC supports -Wno-switch])
OLD_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Wno-switch"
AC_COMPILE_IFELSE(
- [int foo;],
+ [AC_LANG_SOURCE([int foo;])],
[AC_MSG_RESULT([yes])],
[
AC_MSG_RESULT([no])
@@ -509,7 +509,7 @@ AC_MSG_CHECKING([whether $CC supports -fPIC])
OLD_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -fPIC"
AC_COMPILE_IFELSE(
- [int foo;],
+ [AC_LANG_SOURCE([int foo;])],
[
AC_MSG_RESULT([yes])
compiler_supports_pic="yes"
@@ -533,14 +533,14 @@ fi
# default
CFLAGS="$my_shared_test_flags -shared"
AC_LINK_IFELSE(
- [[
+ [AC_LANG_SOURCE([
int bar = 0;
int foo(void)
{
return bar;
}
- ]],
+ ])],
[
compiler_shared_objects="-shared"
]
@@ -548,14 +548,14 @@ AC_LINK_IFELSE(
# BeOS specific
CFLAGS="$my_shared_test_flags -nostart"
AC_LINK_IFELSE(
- [[
+ [AC_LANG_SOURCE([
int bar = 0;
int foo(void)
{
return bar;
}
- ]],
+ ])],
[
compiler_shared_objects="-nostart"
]
@@ -580,14 +580,14 @@ OLD_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $SOFLAGS"
WITH_PLUGINS="yes"
AC_LINK_IFELSE(
- [[
+ [AC_LANG_SOURCE([
int bar = 0;
int foo(void)
{
return bar;
}
- ]],
+ ])],
[
AC_MSG_RESULT([no])
CFLAGS="$OLD_CFLAGS"
@@ -597,14 +597,14 @@ AC_LINK_IFELSE(
# Verify if -shared really fails due to lack of -fPIC or something else
CFLAGS="$CFLAGS -fPIC"
AC_LINK_IFELSE(
- [[
+ [AC_LANG_SOURCE([
int bar = 0;
int foo(void)
{
return bar;
}
- ]],
+ ])],
[
AC_MSG_RESULT([yes])
CFLAGS="$OLD_CFLAGS -fPIC"
@@ -634,7 +634,7 @@ AC_MSG_CHECKING([whether $CC supports -fno-strict-aliasing])
OLD_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -fno-strict-aliasing"
AC_COMPILE_IFELSE(
- [int foo;],
+ [AC_LANG_SOURCE([int foo;])],
[AC_MSG_RESULT([yes])],
[
AC_MSG_RESULT([no])
@@ -792,7 +792,7 @@ AC_SEARCH_LIBS([clock_gettime], [rt])
if test "$ac_cv_search_clock_gettime" != "no" ; then
AC_MSG_CHECKING([whether CLOCK_MONOTONIC is supported and works])
AC_RUN_IFELSE(
- [
+ [AC_LANG_SOURCE([
#include <sys/time.h>
#include <time.h>
#include <unistd.h>
@@ -802,7 +802,7 @@ if test "$ac_cv_search_clock_gettime" != "no" ; then
struct timespec tval;
return clock_gettime(CLOCK_MONOTONIC, &tval);
}
- ],
+ ])],
[
AC_MSG_RESULT([yes])
CFLAGS="$CFLAGS -DHAVE_MONOTONIC_CLOCK"
diff --git a/db/abra_db.txt b/db/abra_db.txt
index 41c1b6eae..2eb770abd 100644
--- a/db/abra_db.txt
+++ b/db/abra_db.txt
@@ -1,16 +1,17 @@
// Hocus-Pocus (Abrakadabra) Castable Skills Database
//
// Structure of Database:
-// SkillID,DummyName,RequiredHocusPocusLevel,Rate
+// SkillID,DummyName,RequiredHocusPocusLevel,Rate
//
// 01. SkillID Skill ID to be casted by hocus pocus.
// 02. DummyName Name of the skill (informative, not used by server).
// 03. RequiredHocusPocusLevel Minimum skill level of hocus pocus for the current skill to be selected.
-// 04. Rate Chance at which the skill is selected (1 = 0.01%, 10000 = 100%).
+// 04. Rate Chance at which a skill is selected (1 = 0.01%, 10000 = 100%).
//
// NOTE: The skill is picked at random from the entire database and then tested for rate. If it
-// does not succeed at that rate, an another skill is picked and tested. This continues
+// does not succeed at that rate, another skill is picked and tested. This continues
// until a skill succeeds.
+//====================================================
//1,Basic Skill,1,0
diff --git a/db/cashshop_db.conf b/db/cashshop_db.conf
index 381d898e0..05bf5b270 100644
--- a/db/cashshop_db.conf
+++ b/db/cashshop_db.conf
@@ -7,8 +7,14 @@
//= \_| |_/\___|_| \___|\__,_|_|\___||___/
//=
//= http://hercules.ws/board/
-//====================================================
+//================= More Information =================
//= http://hercules.ws/board/topic/367-introducing-cash-shop-support/
+//====================================================
+// This file handles the entire Cashshop. You can simply
+// add in any amount of items you like within each category.
+// Please keep in mind that the Cashshop does not work
+// with ragexere clients.
+//====================================================
cash_shop: (
{
diff --git a/db/elemental_skill_db.txt b/db/elemental_skill_db.txt
index a0852e5f3..aa0a428ef 100644
--- a/db/elemental_skill_db.txt
+++ b/db/elemental_skill_db.txt
@@ -1,55 +1,91 @@
// Elemental Summons Skill Database
//
// Structure of Database:
-// ElementalID,SkillID,SkillLevel,ReqMode
+// ElementalID,SkillID,SkillLevel,ReqMode
//
// Spirit Modes: 1 = Passive, 2 = Defensive, 4 = Aggressive
+//====================================================
+//================
// EL_AGNI_S
+//================
2114,8413,1,1 //EL_PYROTECHNIC,Pyrotechnic
2114,8401,1,2 //EL_CIRCLE_OF_FIRE,Circle of Fire
2114,8425,1,4 //EL_FIRE_ARROW,Fire Arrow
+
+//================
// EL_AGNI_M
+//================
2115,8414,1,1 //EL_HEATER,Heater
2115,8402,1,2 //EL_FIRE_CLOAK,Fire Cloak
2115,8426,1,4 //EL_FIRE_BOMB,Fire Bomb
+
+//================
// EL_AGNI_L
+//================
2116,8415,1,1 //EL_TROPIC,Tropic
2116,8403,1,2 //EL_FIRE_MANTLE,Fire Mantle
2116,8428,1,4 //EL_FIRE_WAVE,Fire Wave
+
+//================
// EL_AQUA_S
+//================
2117,8416,1,1 //EL_AQUAPLAY,Aqua Play
2117,8404,1,2 //EL_WATER_SCREEN,Water Screen
2117,8430,1,4 //EL_ICE_NEEDLE,Ice Needle
+
+//================
// EL_AQUA_M
+//================
2118,8417,1,1 //EL_COOLER,Cooler
2118,8405,1,2 //EL_WATER_DROP,Water Drop
2118,8431,1,4 //EL_WATER_SCREW,Water Screw
+
+//================
// EL_AQUA_L
+//================
2119,8418,1,1 //EL_CHILLY_AIR,Cool Air
2119,8406,1,2 //EL_WATER_BARRIER,Water Barrier
2119,8433,1,4 //EL_TIDAL_WEAPON,Tidal Weapon
+
+//================
// EL_VENTUS_S
+//================
2120,8419,1,1 //EL_GUST,Gust
2120,8407,1,2 //EL_WIND_STEP,Wind Step
2120,8434,1,4 //EL_WIND_SLASH,Wind Slasher
+
+//================
// EL_VENTUS_M
+//================
2121,8420,1,1 //EL_BLAST,Blast
2121,8408,1,2 //EL_WIND_CURTAIN,Wind Curtain
2121,8435,1,4 //EL_HURRICANE,Hurricane Rage
+
+//================
// EL_VENTUS_L
+//================
2122,8421,1,1 //EL_WILD_STORM,Wild Storm
2122,8409,1,2 //EL_ZEPHYR,Zephyr
2122,8437,1,4 //EL_TYPOON_MIS,Typhoon Missile
+
+//================
// EL_TERA_S
+//================
2123,8422,1,1 //EL_PETROLOGY,Petrology
2123,8410,1,2 //EL_SOLID_SKIN,Solid Skin
2123,8439,1,4 //EL_STONE_HAMMER,Stone Hammer
+
+//================
// EL_TERA_M
+//================
2124,8423,1,1 //EL_CURSED_SOIL,Cursed Soil
2124,8411,1,2 //EL_STONE_SHIELD,Stone Shield
2124,8440,1,4 //EL_ROCK_CRUSHER,Rock Launcher
+
+//================
// EL_TERA_L
+//================
2125,8424,1,1 //EL_UPHEAVAL,Upheaval
2125,8412,1,2 //EL_POWER_OF_GAIA,Power of Gaia
2125,8442,1,4 //EL_STONE_RAIN,Stone Rain
diff --git a/db/pre-re/map_zone_db.conf b/db/pre-re/map_zone_db.conf
index 96dbd0c7a..f51fd8fc6 100644
--- a/db/pre-re/map_zone_db.conf
+++ b/db/pre-re/map_zone_db.conf
@@ -9,17 +9,22 @@
//= http://hercules.ws/board/
//====================================================
//= Hercules Map Zone Database [Ind/Hercules]
-//==
+//================ More Information ==================
+//= http://hercules.ws/board/topic/302-introducing-hercules-map-zone-database/
+//= (TODO: replace with wiki link and detail the wiki page in a decent format ^)
+//====================================================
+//================ Description =======================
//= A unlimited number of zones may be created, a zone
//= may be used to create a set of disabled items, disabled skills
-//= and mapflags to be used by as many maps as one chooses,
-//= maps can be linked to a specific zone through the zone mapflag
-//= '<map name><tab>mapflag<tab>zone<tab><zone name>'
-//== available types for 'disabled_skills':
+//= and mapflags to be used by as many maps as one chooses.
+//= Maps can be linked to a specific zone through the zone mapflag
+//= '<map name><tab>mapflag<tab>zone<tab><zone name>'.
+//====================================================
+//= Available types for 'disabled_skills':
//= PLAYER, HOMUN, MERCENARY, MONSTER, PET, ELEMENTAL, MOB_BOSS, CLONE, ALL and NONE
-//== More on
-//= http://hercules.ws/board/topic/302-introducing-hercules-map-zone-database/
-//= (TODO: replace with wiki link and detail the wiki page in a decent format ^)
+//====================================================
+
+
zones: (
{
/* All zone is a dynamic (very special) zone that is forcebly inherited by ALL maps automatically */
diff --git a/db/pre-re/skill_tree.conf b/db/pre-re/skill_tree.conf
index a6eb10626..19712da50 100644
--- a/db/pre-re/skill_tree.conf
+++ b/db/pre-re/skill_tree.conf
@@ -8,7 +8,7 @@
//=
//= http://hercules.ws/board/
//================= More Information =================
-// http://hercules.ws/board/topic/1188-skill-tree-db-redesign/ <desc~!>
+// http://hercules.ws/board/topic/1188-skill-tree-db-redesign/
//================ Structure Example =================
/*
Job_Name: { // Job names as in src/map/pc.c (they are hardcoded at the moment so if you want to add a new job you should add it there)
@@ -1950,7 +1950,7 @@ Baby_Swordsman: {
inherit: ( "Swordsman" );
}
Baby_Magician: {
- inherit: ( "Priest" );
+ inherit: ( "Magician" );
}
Baby_Archer: {
inherit: ( "Archer" );
diff --git a/db/re/item_db.txt b/db/re/item_db.txt
index e42443d73..92571ec8a 100644
--- a/db/re/item_db.txt
+++ b/db/re/item_db.txt
@@ -3352,7 +3352,7 @@
5658,Imp_Hat,Imp Hat,5,20,,400,,1,,0,0xFFFFFFFF,7,2,256,,1,1,589,{ bonus3 bAutoSpell,"SA_FLAMELAUNCHER",1,5; },{},{}
5659,Sleeper_Hat,Sleeper Hat,5,20,,400,,1,,0,0xFFFFFFFF,7,2,256,,1,1,590,{ bonus3 bAutoSpell,"SA_SEISMICWEAPON",1,5; },{},{}
5660,Gryphon_Hat,Gryphon Hat,5,20,,400,,1,,0,0xFFFFFFFF,7,2,256,,1,1,591,{ bonus3 bAutoSpell,"SA_LIGHTNINGLOADER",1,5; },{},{}
-//5661,Red_Pirate_Bandana,Red Pirate Banada,5,0,,0,,3,,0,0xFFFFFFFF,7,2,256,,10,1,592,{ bonus bStr,1; bonus bDex,1; bonus bAspdRate,2; bonus bVariableCastrate,-2; bonus3 bAutoSpell,"MO_EXTREMITYFIST",1,30; },{},{}
+5661,Red_Pirate_Bandana,Red Pirate Bandana,5,0,,0,,3,,0,0xFFFFFFFF,7,2,256,,10,1,592,{ bonus bStr,1; bonus bDex,1; bonus bAspdRate,2; bonus bVariableCastrate,-2; bonus3 bAutoSpell,"MO_EXTREMITYFIST",1,3; },{},{}
//5662,Libra_Crown,Libra Crown,5,10,,300,,3,,0,0xFFFFFFFF,7,2,256,,1,1,593,{ bonus bDex,3; },{},{}
//5663,Libra_Diadem,Libra Diadem,5,10,,300,,3,,0,0xFFFFFFFF,7,2,256,,1,1,594,{ bonus bDex,3; },{},{}
5664,Filir_Wing,Filir's Pinions,5,20,,100,,1,,0,0xFFFFFFFF,7,2,512,,70,1,595,{ bonus bAspdRate,2; bonus bVariableCastrate,-2; },{},{}
@@ -3455,7 +3455,7 @@
//5761,Sloth_Hat,Sloth Hat,5,20,,800,,3,,1,0xFFFFFFFF,7,2,256,,1,1,638,{ bonus bAgi,2; },{},{}
//5762,Duneyrr_Helm,Duneyrr Helm,5,20,,100,,5,,0,0xFFFFFFFF,7,2,256,,1,1,639,{ bonus bAllStats,1; bonus bMdef,5; },{},{}
5763,Red_Bunny_Band,Red Bunny Band,5,0,,200,,4,,0,0xFFFFFFFF,7,2,256,,1,1,640,{ bonus bAgi,2; bonus bMdef,3; },{},{}
-//5764,Love_Rabbit_Hood,Love Rabbit Hood,5,20,,300,0,1,0,1,0xFFFFFFFF,7,2,769,,549,0,549,{},{},{}
+5764,Love_Rabbit_Hood,Love Rabbit Hood,5,20,,300,,1,,1,0xFFFFFFFF,7,2,769,,10,0,549,{ bonus3 bAutoSpell,"PR_GLORIA",3,((readparam(bAgi)>=80)?30:10); },{},{}
5765,Black_Tail_Ribbon,Black Tail Ribbon,5,20,,100,,0,,1,0xFFFFFFFF,7,2,256,,10,1,642,{ bonus bMdef,5; bonus bLongAtkDef,10; bonus2 bSubEle,Ele_Neutral,5; },{},{}
5766,Amistr_Cap,Amistr Cap,5,20,,500,,4,,0,0xFFFFFFFF,7,2,256,,50,1,643,{ bonus bVit,5; bonus3 bAutoSpellWhenHit,"NPC_STONESKIN",6,20; },{},{}
5767,Samurai_Mask,Samurai Mask,5,20,,300,,1,,0,0xFFFFFFFF,7,2,1,,50,0,644,{ bonus2 bAddRace,RC_NonBoss,1; bonus2 bAddRace,RC_Boss,1; },{},{}
@@ -3473,7 +3473,7 @@
//5779,Drooping_Boto,Drooping Boto,5,20,,100,,3,,1,0xFFFFFFFF,7,2,256,,1,1,657,{ bonus bInt,2; },{},{}
//5780,Tendrilion_Hat,Tendrilion Hat,5,20,,100,,0,,0,0xFFFFFFFF,7,2,256,,1,1,658,{},{},{}
5781,Persika,Persika,5,20,,100,,0,,1,0xFFFFFFFF,7,2,256,,0,0,659,{ bonus bFlee,1; bonus bMaxSP,20; },{},{}
-//5782,Hoplite_Helmet,Hoplite Helmet,5,20,,700,0,4,0,1,0xFFFFFFFF,7,2,769,,660,1,660,{},{},{}
+5782,Hoplite_Helmet,Hoplite Helmet,5,20,,700,0,4,0,1,0xFFFFFFFF,7,2,769,,1,1,660,{},{},{}
//5783,YellowBunny_Hairband,YellowBunny Hairband,5,20,,200,,0,,1,0xFFFFFFFF,7,2,256,,1,1,662,{ bonus bStr,1; bonus bInt,1; bonus bDex,2; },{},{}
//5784,PinkBunny_Hairband,PinkBunny Hairband,5,20,,200,,0,,1,0xFFFFFFFF,7,2,256,,1,1,663,{ bonus bStr,1; bonus bInt,2; bonus bDex,1; },{},{}
//5785,Green_Bunny_Hairband,Green Bunny Hairband,5,20,,200,,0,,1,0xFFFFFFFF,7,2,256,,1,1,664,{ bonus bStr,2; bonus bInt,1; bonus bDex,1; },{},{}
@@ -3505,7 +3505,7 @@
5811,Santa_Beard,Santa's Beard,5,20,,100,,5,,0,0xFFFFFFFF,7,2,1,,0,0,25,{ bonus2 bSubRace,RC_Brute,5; },{},{}
5812,Hat_Of_Expert,Hat Of Expert,5,0,,0,,2,,0,0xFFFFFFFF,7,2,256,,0,1,16,{ bonus3 bAddEffWhenHit,Eff_Bleeding,500,ATF_TARGET|ATF_SELF; bonus3 bAddEffWhenHit,Eff_Silence,500,ATF_TARGET|ATF_SELF; bonus3 bAddEffWhenHit,Eff_Confusion,500,ATF_TARGET|ATF_SELF; bonus3 bAddEffWhenHit,Eff_Curse,500,ATF_TARGET|ATF_SELF; bonus3 bAddEffWhenHit,Eff_Blind,500,ATF_TARGET|ATF_SELF; },{},{}
//5813,Red_Ph.D_Hat,Red Ph.D Hat,5,1000,,500,,0,,0,0xFFFFFFFF,7,2,256,,0,1,481,{ bonus bInt,1; },{},{}
-//5814,Ati_Atihan_Hat3,Ati Atihan Hat3,5,20,,0,,2,,0,0xFFFFFFFF,7,2,769,,20,0,303,{},{},{}
+5814,Ati_Atihan_Hat3,Ati Atihan Hat3,5,20,,0,,2,,0,0xFFFFFFFF,7,2,769,,20,0,303,{},{},{}
5815,Cowboy_Hat_J,Purple Cowboy Hat,5,20,,500,,2,,0,0xFFFFFFFF,7,2,256,,0,1,475,{ bonus bStr,1; bonus2 bSubSize,Size_Small,5; bonus2 bSubSize,Size_Medium,5; bonus2 bSubSize,Size_Large,5; },{},{}
5816,Classic_Hat_J,Classic Hat,5,20,,500,,0,,0,0xFFFFFFFF,7,2,256,,0,1,411,{},{},{}
5817,Valentine_Pledge,Valentine Pledge,5,20,,0,,3,,0,0xFFFFFFFF,7,2,136,,0,0,0,{ bonus bAllStats,2; bonus bMdef,3; bonus bHealPower,10; bonus2 bAddRace,RC_NonBoss,3; bonus2 bAddRace,RC_Boss,3; bonus bMatkRate,3; bonus bFlee,10; bonus bAspdRate,1; },{},{}
@@ -3543,7 +3543,7 @@
//5849,Doctor_Hairband,Doctor Hairband,5,20,,0,,0,,0,0xFFFFFFFF,7,2,256,,1,0,60,{},{},{}
//5850,Golden_Savage_Hat,Golden Savage Hat,5,20,,500,,5,,0,0xFFFFFFFF,7,2,256,,50,1,648,{},{},{}
5851,Summer_Knight,Summer Knight,5,20,,0,,1,,0,0xFFFFFFFF,7,2,768,,60,0,138,{},{},{}
-//5852,Resurrect_Egg_Shell,Resurrect Egg Shell,5,20,,500,,-7,,0,0xFFFFFFFF,7,2,256,,40,1,537,{ bonus bMdef,-7; },{},{}
+5852,Easter_Egg_Shell,Easter Egg Shell,5,20,,500,,0,,0,0xFFFFFFFF,7,2,256,,40,1,537,{ bonus bDef,-7; bonus bMdef,-7; bonus2 bHPRegenRate,(MaxHp/100),10000; if (getrefine()>=7) bonus bFlee,2; if (getrefine() >= 9) bonus2 bSPRegenRate,(MaxSp/100),10000; },{},{}
//
5856,Passion_FB_Hat,Passion FB Hat,5,20,,600,,2,,1,0xFFFFFFFF,7,2,256,,1,1,671,{ bonus bStr,2; bonus bDex,2; },{},{}
5857,Cool_FB_Hat,Cool FB Hat,5,20,,600,,2,,1,0xFFFFFFFF,7,2,256,,1,1,672,{ bonus bInt,2; bonus bVit,2; },{},{}
@@ -3978,9 +3978,11 @@
6432,Full_Bucket,Full Bucket,3,0,,3000,,,,,,,,,,,,,{},{},{}
6433,Cleaning_Brush,Cleaning Brush,3,20,,300,,,,,,,,,,,,,{},{},{}
6434,Fix_Kit,Fix Kit,3,0,,1000,,,,,,,,,,,,,{},{},{}
+6435,Fresh_Fruit,Fresh Fruit,3,0,,100,,,,,,,,,,,,,{},{},{}
6436,Sea_God's_Call,Sea God's Call,3,20,,0,,,,,,,,,,,,,{},{},{}
6437,Scaraba_Perfume,Scaraba Perfume,3,0,,0,,,,,,,,,,,,,{},{},{}
6438,Unbreakable_Weap,Unbreakable Weap,3,0,,10,,,,,,,,,,,,,{},{},{}
+6439,Unbreakable_Def,Unbreakable Armor,3,0,,10,,,,,,,,,,,,,{},{},{}
6440,General_Lubrication,General Lubrication,3,20,,0,,,,,,,,,,,,,{},{},{}
6441,High_RankLubricant,High Ranked Lubricant,3,20,,0,,,,,,,,,,,,,{},{},{}
6442,Octopus_Hunt_Stick,Octopus Hunting Stick,3,0,,0,,,,,,,,,,,,,{},{},{}
@@ -5226,6 +5228,7 @@
11057,Feb_Sweets,Feb Sweets,3,20,,50,,,,,,,,,,,,,{},{},{}
// More Usable Items
//===================================================================
+11058,Novice_Combi_Book,Novice Combi Book,3,0,,10,,,,,,,,,,,,,{},{},{}
11500,Light_Yellow_Pot,Light Yellow Potion,0,550,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ itemheal rand(175,235),0; },{},{}
11501,Light_White_Pot,Light White Potion,0,1200,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ itemheal rand(325,405),0; },{},{}
11502,Light_Blue_Pot,Light Blue Potion,0,5000,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ itemheal 0,rand(40,60); },{},{}
@@ -5876,6 +5879,7 @@
12581,Vending_Search_Scroll2,Universal Catalog Gold,2,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ searchstores 10,1; },{},{}
12591,Vending_Search_Scroll3,Universal Catalog Bronze,2,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ searchstores 10,1; },{},{}
//
+12595,Lucky_Egg_C7,Lucky Egg C7,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12601,Fresh_Watermelon_Juice,Fresh Watermelon Juice,0,20,,100,,,,,0xFFFFFFFF,7,2,,,,,,{ percentheal 5,5; },{},{}
//
12612,Old_Coin_Bag,Old Coin Bag,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
@@ -5892,13 +5896,17 @@
12623,Advanced_Weapons_Box,Advanced Weapons Box,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getrandgroupitem 12623,1; },{},{}
12624,Delicious_Jelly,Delicious Jelly,0,20,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ percentheal 3,3; },{},{}
//
+12625,Sapa_Feat_Cert_Pack,Sapa Feat Cert Pack,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12636,Malangdo_Canned_Specialties,Malangdo Canned Specialties,2,20,,0,,,,,0xFFFFFFFF,7,2,,,,,,{ warp "malangdo",140,114; },{},{}
//
+12637,Gong_Bug_Pocket,Sow Bug Pocket,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 13208,200; },{},{}
12642,Terra_Mars_100_Box,Terra_Mars_100_Box,0,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 504,100; },{},{}
//
+12643,E_Coin_Pack50,E Coin Pack50,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 6422,50; },{},{}
12646,Fried_Octopus_Legs,Fried Octopus Legs,2,20,,30,,,,,,,,,,,,,{},{},{}
12647,Sea_Ink,Sea Ink,2,20,,30,,,,,,,,,,,,,{},{},{}
//
+12654,Lucky_Egg_C9,Lucky Egg C9,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12658,Transformation_Scroll(Deviruchi),Transformation Scroll(Deviruchi),2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start4 SC_MONSTER_TRANSFORM,1200000,1109,0,0,0; },{},{}
12659,Transformation_Scroll(Raydric),Transformation Scroll(Raydric),2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start4 SC_MONSTER_TRANSFORM,1200000,1276,0,0,0; },{},{}
12660,Transformation_Scroll(Mavka),Transformation Scroll(Mavka),2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start4 SC_MONSTER_TRANSFORM,1200000,1884,0,0,0; },{},{}
@@ -5909,6 +5917,7 @@
//
// ID,AegisName,Name,Type,Buy,Sell,Weight,ATK,DEF,Range,Slots,Job,Upper,Gender,Loc,wLV,eLV,Refineable,View,{ Script },{ OnEquip_Script },{ OnUnequip_Script }
+12665,Grovel_Buff,Grovel Buff,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12690,Old_C_Album_Helm,Old Card Album Helm,2,20,,50,,,,,0xFFFFFFFF,7,2,,,1,,,{},{},{}
12691,Old_C_Album_Armor,Old Card Album Armor,2,20,,50,,,,,0xFFFFFFFF,7,2,,,1,,,{},{},{}
12692,Old_C_Album_Shield,Old Card Album Shield,2,20,,50,,,,,0xFFFFFFFF,7,2,,,1,,,{},{},{}
@@ -5916,8 +5925,10 @@
12694,Old_C_Album_Shoes,Old Card Album Shoes,2,20,,50,,,,,0xFFFFFFFF,7,2,,,1,,,{},{},{}
12695,Old_C_Album_Acc,Old Card Album Acc,2,20,,50,,,,,0xFFFFFFFF,7,2,,,1,,,{},{},{}
//
+12696,RWC_Cele_Fire,RWC Celebration Firecracker,2,0,,20,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_STRFOOD,10000,3; sc_start SC_VITFOOD,10000,3; sc_start SC_INTFOOD,10000,3; sc_start SC_DEXFOOD,10000,3; sc_start SC_AGIFOOD,10000,3; sc_start SC_LUKFOOD,10000,3; },{},{}
12698,Old_C_Album_Weapon,Old Card Album Weapon,2,20,,50,,,,,0xFFFFFFFF,7,2,,,1,,,{},{},{}
//
+12774,Empty_Potion_Bottle,Empty Potion Bottle,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12818,High_Weapon_Box,High Weapon Box,2,20,,50,,,,,0xFFFFFFFF,7,2,,,100,,,{},{},{}
//
12699,Tikbalang_Belt,Tikbalang Belt,2,20,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ pet 2313; },{},{}
@@ -6004,10 +6015,14 @@
//
12775,Ancient_Spirit_Amulet,Ancient Spirit Amulet,2,20,,600,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
//
+12776,Agi_Dish20,Agi Dish20,2,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12786,Change_Slot_Card,Character Position Change Coupon,2,,,,,,,,0xFFFFFFFF,7,2,,,,,,{ set SlotChange, SlotChange + 1; },{},{}
+12787,Diabolic_Scroll,Diabolic Scroll,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ mercenary_create 2342,1800000; },{},{}
12790,Char_Rename_Card,Character Name Change Coupon,2,,,,,,,,0xFFFFFFFF,7,2,,,,,,{ set CharRename, CharRename + 1; },{},{}
//
+12791,Combat_Pill,Combat Pill,2,20,,150,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12848,Falcon_Flute,Falcon Flute,11,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(getskilllv("HT_FALCON")) { if(checkoption(Option_Wug)||checkoption(Option_Wugrider)) end; if(checkfalcon()==1) { setfalcon 0; } else { setfalcon 1; } } },{},{}
+12849,Combination_Kit,Combination Kit,2,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12900,Battle_Manual_Box,Battle Manual Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 12208,10; },{},{}
12901,Insurance_Package,Insurance Package,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 12209,10; },{},{}
12902,Bubble_Gum_Box,Bubble Gum Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 12210,10; },{},{}
@@ -6174,9 +6189,9 @@
13060,E_Counter_Dagger_C,Counter Dagger,4,1,,0,209,,1,0,0x00810204,7,2,2,4,1,0,1,{},{},{}
13061,Black_Wing,Black Wing,4,20,,600,142,,1,1,0x00020000,7,2,2,3,102,1,1,{ bonus2 bSkillAtk,"SC_FATALMENACE",30+(getrefine()*2); bonus bMatkRate,(getrefine()*3); },{},{}
13062,Ancient_Dagger,Ancient Dagger,4,20,,600,107,,0,0,0x028F5EEE,2,2,2,4,120,1,1,{ bonus bMatk,120; bonus bMaxSP,100; bonus bSPrecovRate,5; bonus2 bAddEff2,Eff_Curse,20; bonus3 bAddEff,Eff_Curse,20,ATF_SELF|ATF_SKILL; },{},{}
-//13063,
-//13064,
-//13065,
+13063,Adventure_Knife,Adventure Knife,4,0,,0,60,,1,0,0x02021040,7,2,2,1,1,0,1,{ bonus bUnbreakableWeapon,0; },{},{}
+13064,Academy_Knife,Academy Knife,4,0,,700,110,,1,1,0x02021040,7,2,2,1,1,1,1,{ bonus bUnbreakableWeapon,0; },{},{}
+13065,Academy_Eti_Knife,Academy Eti Knife,4,0,,1200,120,,1,1,0x00000001,7,2,2,1,1,1,1,{ bonus bUnbreakableWeapon,0; },{},{}
13066,P_Dagger3,Eden Dagger III,4,0,,0,165:80,,1,0,0xFE9F7EEF,7,2,2,3,60,0,1,{},{},{}
13067,Caress,Keris,4,20,,700,107:70,,1,1,0xFE9F7EEF,2,2,2,3,30,1,1,{ bonus2 bHpDrainRate,20,10; },{},{}
13068,Pompano,Pompano,4,0,,0,160:100,,3,0,0xFE9F7EEF,7,2,2,1,50,0,1,{ bonus bUnbreakableWeapon,0; autobonus "{ bonus bBaseAtk,30; }",10,7000,BF_WEAPON,"{ specialeffect2 EF_ENHANCE; }"; autobonus "{ bonus bMatk,20; }",10,7000,BF_MAGIC,"{ specialeffect2 EF_SUFFRAGIUM; }"; if(BaseLevel>99) { bonus bBaseAtk,10; bonus bMatk,10; } },{},{}
@@ -6184,13 +6199,14 @@
13070,Scarlet-nail,Scarlet-nail,4,56000,,500,160:80,,1,0,0x000654E2,7,2,2,4,110,1,1,{ bonus bAtkEle,Ele_Fire; bonus2 bAddEff,Eff_Stone,100+(getrefine()*50); },{},{}
13071,Upg_Dagger,Upg Dagger,4,20,,600,55,,1,1,0xFE9F7EEF,7,2,2,3,1,1,1,{ bonus bBaseAtk,(getrefine()*10); bonus bMatk,(getrefine()*5); if(BaseLevel>70) bonus bBaseAtk,(((BaseLevel-70)/10)*5); },{},{}
13072,Velum_Damascus,Vellum Damascus,4,20,,1000,180,,1,0,0xFE9F7EEF,7,2,2,4,95,1,1,{ bonus bAspdRate,getrefine(); },{},{}
-//13073,
+13073,Counter_Dagger_,Counter Dagger,4,120000,,550,140,,1,1,0x00810204,7,2,2,4,55,1,1,{},{},{}
13074,Ninja_Sword_Prototype,Ninja Sword Prototype,4,0,,0,0,,1,0,0x02000000,7,2,2,4,99,0,1,{},{},{}
13075,Kurenai,Kurenai,4,5000,,700,130,,1,0,0x02000000,7,2,2,3,99,1,1,{ bonus bInt,3; },{},{}
13076,Nachal_Sword,Nachal Sword,4,40000,,600,120:100,,1,1,0x02000000,7,2,2,3,110,1,1,{ bonus bInt,3; },{},{}
-//13077,
+13077,Kagekiri,Kagekiri,4,40000,,600,50:120,,1,0,74,7,2,2,4,100,1,1,{},{},{}
13078,Mikacheuki,Mikacheuki,4,40000,,600,50:120,,1,1,0x02000000,7,2,2,4,100,1,1,{},{},{}
// Revolvers
+13079,Metal_Dagger,Metal Dagger,4,20,,0,55,0,,1,0x02021040,7,2,2,3,1,1,1,{},{},{}
13100,Six_Shooter,Six Shooter,4,4500,,400,30,,7,1,0x01000000,7,2,34,1,10,1,17,{ bonus bHit,-10; },{},{}
13101,Six_Shooter_,Six Shooter,4,4500,,400,30,,7,2,0x01000000,7,2,34,1,10,1,17,{ bonus bHit,-10; },{},{}
13102,Crimson_Bolt,Crimson Bolt,4,20000,,450,45,,7,1,0x01000000,7,2,34,2,35,1,17,{ bonus bHit,-10; },{},{}
@@ -6353,8 +6369,8 @@
13429,E_Cutlas_C,Cutlus,4,2,,0,185,,1,0,0x000654E2,7,2,2,4,0,0,2,{ bonus bStr,2; },{},{}
13430,E_Solar_Sword_C,Solar Sword,4,2,,0,120,,1,0,0x000654E2,7,2,2,4,0,0,2,{ bonus bAtkEle,Ele_Fire; },{},{}
13431,Chrome_Sword,Chrome Sword,4,20,,2200,180,,1,0,0x000444A2,2,2,2,3,110,1,2,{ bonus bAgi,1; },{},{}
-//13432,
-//13433,
+13432,Adventure_Sword,Adventure Sword,4,0,,0,80,,1,0,0x00004082,7,2,2,1,1,0,2,{},{},{}
+13433,Academy_Sword,Academy Sword,4,0,,1200,120,,1,1,0x00004082,7,2,2,1,1,1,2,{},{},{}
13434,P_Saber3,Eden Saber III,4,0,,0,185,,1,0,0x000654E2,7,2,2,3,60,0,2,{},{},{}
// More Cash Shop Items
13500,Insurance60_Package,Life Insurrance Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 14500,10; },{},{}
@@ -7161,6 +7177,7 @@
14304,Scuba_Mask_Box,Scuba Mask Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5397,1; },{},{}
14306,RWC_Special_Scroll,RWC Special Scroll,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ packageitem(); },{},{}
14307,RWC_Limited_Scroll,RWC Limited Scroll,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ packageitem(); },{},{}
+14308,Ardor_Scroll,Ardor Scroll,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
14314,Phreeoni_Scroll_Box,Phreeoni Scroll Box,2,,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 14597,10; },{},{}
14315,Ghostring_Scroll_Box,Ghostring Scroll Box,2,,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 14598,10; },{},{}
14316,July7_Scroll,July7 Scroll,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ packageitem(); },{},{}
@@ -7172,15 +7189,22 @@
14350,Mental_Potion50_Box,Mental Potion 50 Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 14600,50; },{},{}
14351,Tyr's_Blessing20_Box,Tyr's Blessing 20 Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 14601,20; },{},{}
14352,Tyr's_Blessing50_Box,Tyr's Blessing 50 Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 14601,50; },{},{}
+14361,Orc_HeroS_Box,Orc HeroS Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 14604,10; },{},{}
14363,Heart_Scroll,Heart Scroll,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ packageitem(); },{},{}
+14372,Powder_Snow_Box,Powder Snow Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 12317,1; },{},{}
14375,Holy_Celestial_Axe_Box,Celestial Axe Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 1383,1; },{},{}
14376,Angeling_Pot_Box,Angeling Potion Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 12350,1; },{},{}
14377,Shout_Megaphone_Box,Scream Megaphone Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 12351,1; },{},{}
+14379,Love_Daddy_Box,Love Daddy Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5489,1; },{},{}
14380,Anubis_Helm_Box,Anubis Hat Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5490,1; },{},{}
+14381,Piercing_Box_M,Piercing Box M,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 1644,1; },{},{}
14393,Almighty_Charm_Box,Universal Amulet Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 7945,1; },{},{}
+14407,Xmas_Scroll,Xmas Scroll,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
14408,New_Year_Scroll,New Year Scroll,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ packageitem(); },{},{}
+14438,Honglyun's_Sword_Box,Honglyun's Sword Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 13420,1; },{},{}
14440,Dice_Hat_Box,Dice Hat Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5496,1; },{},{}
14441,King_Tiger_Doll_Hat_Box,King Tiger Doll Hat Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5497,1; },{},{}
+14442,Wondering_Wolf_Helm_Box,Wondering Wolf Helm Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5498,1; },{},{}
14447,Pirate's_Pride_Box,Pirate's Pride Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5501,1; },{},{}
14448,Necromencer's_Hood_Box,Necromancer's Hood Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5502,1; },{},{}
14459,Rabbit_Magic_Hat_Box,Magic Rabbit Hat Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5503,1; },{},{}
@@ -7188,6 +7212,7 @@
14461,Asara_Fairy_Hat_Box,Ashura Fairy Hat Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5505,1; },{},{}
14466,Valentine_Pledge_Box,Valentine's Emblem Box,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{ packageitem(); },{},{}
14469,Ox_Tail_Scroll,Ox Tail Egg,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ packageitem(); },{},{}
+14485,Academy_Badge_Box,Academy Badge Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 2751,1; },{},{}
14500,Insurance60,Life Insurrance Certificate,2,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_CASH_DEATHPENALTY,3600000,0; },{},{}
14508,Zeny_Scroll,Zeny Pet Egg Scroll,2,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
14509,Light_Center_Pot,Light Concentration Potion,2,800,,20,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_ATTHASTE_POTION1,1800000,0; },{},{}
@@ -7292,6 +7317,7 @@
14608,Luxurious_Dinner_E,Manchu-Han Imperial Feast,2,20000,,1200,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_INCALLSTATUS,3600000,6; },{},{}
14609,Spoiled_Cuisine,Spoiled Cuisine,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{ percentheal 10,10; },{},{}
// More Armors
+14613,RWC_Scroll_2012,RWC Scroll 2012,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
15000,Bone_Plate,Bone Plate,5,20,,1000,,60,,1,0x000654E2,2,2,16,,85,1,0,{ bonus bStr,1; bonus bMdef,3; bonus2 bIgnoreDefRate,RC_DemiHuman,10; bonus2 bIgnoreDefRate,RC_Brute,10; bonus3 bAutoSpellWhenHit,"NPC_WIDEBLEEDING",1,10; },{},{}
15001,Odin's_Blessing_I,Odin's Blessing,5,0,,0,,10,,0,0xFFFFFFFE,7,2,16,,0,0,0,{},{},{}
15002,Rune_Plate,Rune Plate,5,0,,0,,95,,1,0x00000080,7,2,16,,99,1,0,{},{},{}
@@ -7325,24 +7351,24 @@
15030,Judgement_Robe,Judgement Robe,5,20,,300,,22,,0,0x00000100,2,2,16,,100,1,0,{ bonus bDefEle,Ele_Dark; bonus bMdef,10; bonus bStr,2; bonus bInt,1; bonus2 bSubRace,RC_Demon,10; bonus2 bSubRace,RC_Undead,10; bonus2 bSubRace,RC_Formless,-10; bonus2 bSubRace,RC_Brute,-10; bonus2 bSubRace,RC_DemiHuman,-10; bonus2 bSubRace,RC_Plant,-10; bonus2 bSubRace,RC_Insect,-10; bonus2 bSubRace,RC_Fish,-10; bonus2 bSubRace,RC_Angel,-10; bonus2 bSubRace,RC_Dragon,-10; },{},{}
15031,Paradise_Uniform4,Paradise Uniform IV,5,0,,0,,58,,0,0xFFFFFFFF,7,2,16,,60,0,0,{ bonus bMdef,5; bonus bMaxHP,500; bonus bMaxSP,50; bonus bStr,1; bonus bInt,1; bonus bDex,1; },{},{}
15032,Tidon,Tidon,5,20,,500,,2,,1,0xFFFFFFFE,7,2,16,,1,1,0,{ bonus bMdef,10; bonus2 bResEff,Eff_Stun,1500; bonus2 bResEff,Eff_Freeze,1500; bonus2 bSubRace,RC_NonBoss,5; bonus2 bSubRace,RC_Boss,5; },{},{}
-//15033,
-//15034,
-//15035,
+15033,Tutorial_Mattle,Tutorial Mantle,5,0,,600,,37,,0,0x00000000,7,2,16,,1,0,0,{},{},{}
+15034,Tutorial_Mattle_,Tutorial Mantle,5,0,,600,,37,,1,0x00000000,7,2,16,,1,0,0,{},{},{}
+15035,2010_Love_Dad,2010 Love Dad,5,10,,100,,6,,1,0xFFFFFFFF,7,2,16,,0,1,0,{ bonus bAllStats,1; bonus bMaxHP,150; bonus bMaxSP,150; bonus2 bResEff,Eff_Stone,9000; bonus2 bResEff,Eff_Freeze,9000; bonus2 bResEff,Eff_Stun,9000; bonus2 bResEff,Eff_Sleep,9000; bonus2 bResEff,Eff_Silence,9000; bonus2 bResEff,Eff_Curse,9000; bonus2 bResEff,Eff_Confusion,9000; bonus2 bResEff,Eff_Blind,9000; bonus2 bResEff,Eff_Poison,9000; bonus2 bResEff,Eff_Bleeding,9000; },{},{}
15036,Ur_Plate,Urj Plate,5,20,,3000,,110,,0,0x00000080,8,2,16,,100,1,0,{ bonus bMdef,10; bonus bMaxHPRate,getequiprefinerycnt(EQI_ARMOR); bonus2 bSubRace,RC_DemiHuman,5; bonus2 bSubEle,Ele_Neutral,5; },{},{}
15037,Peuz_Plate,Pertz Plate,5,20,,3000,,110,,0,0x00000080,8,2,16,,100,1,0,{ bonus bMdef,10; bonus bBaseAtk,20; bonus bFlee,17; },{},{}
15038,Sabah_Cloth,Sabath's Cloth,5,20,,100,,45,,1,0x00001000,7,2,16,,100,1,0,{ bonus bLuk,3; bonus3 bAutoSpell,"ASC_METEORASSAULT",getskilllv("ASC_METEORASSAULT"),10; },{},{}
15039,Nab_Cloth,Nabeu's Cloth,5,20,,100,,45,,1,0x00001000,7,2,16,,100,1,0,{ bonus bStr,2; bonus bInt,2; },{},{}
-//15040,
-//15041,
+15040,Prison_Uniform,Prison Uniform,5,10,,1500,,5,,0,0xFFFFFFFF,7,2,16,,50,1,0,{ set .@rate,(getrefine()>10)?10:getrefine(); bonus bHit,.@rate; bonus bFlee,.@rate; },{},{}
+15041,Boitata_Armor,Boitata Armor,5,20,,600,,45,,1,0xFFFFFFFF,7,2,16,,60,1,0,{ bonus bMdef,3; bonus2 bSubEle,Ele_Neutral,7; bonus bMaxHPrate,5; bonus bFlee,5; },{},{}
15042,White_Wing_Suit,White Wing Suit,5,20,,100,,45,,1,0x00000800,7,2,16,,100,1,0,{ bonus bLongAtkRate,getrefine()*2; bonus bFlee,getrefine(); },{},{}
15043,Black_Wing_Suit,Black Wing Suit,5,20,,100,,45,,1,0x00000800,8,2,16,,100,1,0,{ bonus bInt,2; bonus bBaseAtk,getequiprefinerycnt(EQI_ARMOR)*3; },{},{}
15044,Green_Surgical_Gown,Green Surgical Gown,5,56000,,660,,66,,1,0x00040000,7,2,16,,100,1,0,{ bonus bDex,1; bonus bMaxSP,30; },{},{}
-//15045,
+15045,Armor_Of_Valor,Armor Of Valor,5,0,,0,,4,,0,0xFFFFFFFF,7,2,16,,0,0,0,{},{},{}
15046,Siege_Plate,Siege Plate,5,0,,3300,,85,,1,0x006444A2,7,2,16,,95,1,0,{ bonus bMdef,5; bonus2 bSubRace,RC_DemiHuman,2; if(getrefine()>5) { bonus bHealpower2,12; bonus bAddItemHealRate,12; } if(getrefine()>8) { bonus bMaxHPRate,25; } },{},{}
15047,Siege_Suits,Siege Suit,5,0,,750,,50,,1,0x036E5CEA,7,2,16,,95,1,0,{ bonus bMdef,10; bonus2 bSubRace,RC_DemiHuman,2; if(getrefine()>5) { bonus bFlee2,5; bonus bLongAtkDef,20; } if(getrefine()>8) { bonus bMaxHPRate,15; } },{},{}
15048,Siege_Robe,Siege Robe,5,0,,500,,40,,1,0x00818315,7,2,16,,95,1,0,{ bonus bMdef,20; bonus2 bSubRace,RC_DemiHuman,2; if(getrefine()>5) { bonus bFlee,5; bonus bLongAtkDef,15; } if(getrefine()>8) { bonus bMaxHP,1000; bonus bMaxSP,100; } },{},{}
-//15049,
-//15050,
+15049,Armor_Of_Faith,Armor Of Faith,5,20,,1000,,0,,0,0xFFFFFFFF,7,2,16,,50,1,0,{ bonus bStr,4; bonus bInt,4; bonus bVit,4; bonus bDex,4; bonus bAgi,4; bonus bLuk,4; },{},{}
+15050,Armor_Of_Sanctity,Armor Of Sanctity,5,20,,1000,,0,,0,0xFFFFFFFF,7,2,16,,50,1,0,{ bonus bStr,4; bonus bInt,4; bonus bVit,4; bonus bDex,4; bonus bAgi,4; bonus bLuk,4; },{},{}
15051,Bakonawa_Armor,Bakunawa Scale Armor,5,20,,500,,55,,0,0xFFFFFFFF,7,2,16,,1,1,0,{ bonus2 bSubRace,RC_Boss,getrefine()/2; bonus bAllStats,1; },{},{}
15052,Bayani_Bakonawa_Armor,Bayani Bakunawa Scale Armor,5,20,,500,,55,,1,0xFFFFFFFF,7,2,16,,1,1,0,{ bonus2 bSubRace,RC_Boss,getrefine()/2; bonus bAllStats,2; },{},{}
15053,Special_Ninja_Suit,Special Ninja Suit,5,10000,,1200,,70,,0,0x02000000,7,2,16,,100,1,0,{ bonus bAgi,1+(getrefine()/3); },{},{}
@@ -7350,6 +7376,7 @@
15055,Armor_of_Nothingness,Armor of Nothingness,5,10000,,1500,,60,,1,0x02000000,7,2,16,,100,1,0,{ bonus bAgi,1; },{},{}
15056,Special_Ninja_Suit_,Special Ninja Suit,5,10000,,1200,,70,,1,0x02000000,7,2,16,,100,1,0,{ bonus bAgi,1+(getrefine()/3); },{},{}
// More Maces
+15057,Pure_White_Apron,Pure White Apron,5,20,,600,0,50,0,1,0xFFFFFFFF,7,2,16,,0,1,0,{},{},{}
16000,Erde,Erde,4,20,,500,130,,1,2,0x0004C5B2,2,2,2,4,50,1,8,{ bonus2 bSkillAtk,"AM_ACIDTERROR",20; bonus2 bSkillAtk,"AM_DEMONSTRATION",20; bonus bMaxSP,50; bonus bHealPower,10; },{},{}
16001,Red_Square_Bag,Red Square Bag,4,20,,500,130,,1,2,0x0004C5B2,2,2,2,3,50,1,8,{ bonus bMaxHP,200; bonus2 bSkillAtk,"AM_ACIDTERROR",20; bonus2 bSkillAtk,"AM_DEMONSTRATION",20; bonus2 bAddMonsterDropItem,501,50; bonus2 bAddMonsterDropItem,502,20; bonus2 bAddMonsterDropItem,503,20; bonus2 bAddMonsterDropItem,504,20; bonus2 bAddMonsterDropItem,505,10; if(readparam(bStr)>=95) bonus2 bAddEff,Eff_Stun,500; },{},{}
16002,Stunner_C,Stunner,4,0,,0,175,,1,0,0x00008110,7,2,2,3,1,0,8,{ bonus2 bAddEff,Eff_Stun,1000; bonus2 bAddSize,Size_Small,40; bonus2 bAddSize,Size_Medium,40; bonus2 bAddSize,Size_Large,40; },{},{}
@@ -7361,8 +7388,8 @@
16008,F_Spanner_C,Spanner,4,2,,0,150,,1,0,0x00008110,7,2,2,3,0,0,8,{},{},{}
16009,E_Spanner_C,Spanner,4,2,,0,150,,1,0,0x00008110,7,2,2,3,0,0,8,{},{},{}
16010,Red_Ether_Bag,Red Ether Bag,4,20,,0,15:100,,1,1,0x0004C5B2,7,2,2,3,102,1,8,{ if(getrefine()>=6){ bonus2 bSkillAtk,"GN_CRAZYWEED",20+((getrefine()-5)*2); bonus2 bSkillAtk,"GN_DEMONIC_FIRE",20+((getrefine()-5)*2); } else { bonus2 bSkillAtk,"GN_CRAZYWEED",20; bonus2 bSkillAtk,"GN_DEMONIC_FIRE",20; } },{},{}
-//16011,
-//16012,
+16011,Adventure_Mace,Adventure Mace,4,0,,0,60,,1,0,0x00008110,7,2,2,1,1,0,8,{},{},{}
+16012,Academy_Mace,Academy Mace,4,0,,1000,110,,1,1,0x00008110,7,2,2,1,1,1,8,{},{},{}
16013,Judgement_Mace1,Judgement Mace I,4,20,,1200,140:180,,1,2,0x00000100,2,2,2,3,100,1,8,{ bonus bStr,1; bonus bInt,1; autobonus "{ bonus2 bAddRace,RC_Demon,20; }",10,7000,BF_WEAPON|BF_MAGIC,"{ specialeffect2 EF_BLOODDRAIN; }"; },{},{}
16014,P_Mace3,Eden Mace III,4,0,,0,172,,1,0,0x0004C5B3,7,2,2,3,60,0,8,{},{},{}
16015,Cat_Club,Cat Club,4,20,,700,88,,1,3,0x0004C5B3,7,2,2,1,1,1,8,{ bonus2 bAddRace,RC_Brute,15; },{},{}
@@ -7373,39 +7400,43 @@
16020,Velum_Stunner,Vellum Stunner,4,20,,1500,170,,1,0,0x0004C5B3,7,2,2,4,95,1,8,{ bonus bUnbreakableWeapon,0; bonus2 bAddEff,Eff_Stun,1000+getrefine(); bonus bAspdRate,getrefine(); },{},{}
16021,Velum_Flail,Vellum Flail,4,20,,1500,170,,1,0,0x0004C5B3,7,2,2,4,95,1,8,{ bonus bUnbreakableWeapon,0; bonus3 bAutoSpell,"NPC_CRITICALWOUND",5,10; bonus bHit,getrefine(); bonus bCritical,getrefine(); },{},{}
// More Rental Boxes
+16022,Nemesis_,Nemesis ,4,20,,900,120,,1,2,0x00008110,7,2,2,4,60,1,8,{ bonus bUnbreakableWeapon,0; bonus bAtkEle,Ele_Holy; },{},{}
16134,King_Frog_Hat_Box,Frog King Hat Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5528,1; },{},{}
16135,Evil's_Bone_Hat_Box,Satanic Bone Helm Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5529,1; },{},{}
-//16186,Baby_Dragon_Hat_Box,
-//16226,Aries_Diadem_Box,
-//16227,Aries_Crown_Box,
-//16230,Taurus_Diadem_Box,
-//16231,Taurus_Crown_Box,
-//16246,Crown_of_Deceit_Box,
+16186,B_Dragon_Hat_Box,Baby Dragon Hat Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5531,1; },{},{}
+16226,Aries_Diadem_Box,Aries Diadem Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5545,1; },{},{}
+16227,Aries_Crown_Box,Aries Crown Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5546,1; },{},{}
+16230,Taurus_Diadem_Box,Taurus Diadem Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5549,1; },{},{}
+16231,Taurus_Crown_Box,Taurus Crown Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5550,1; },{},{}
+16246,Crown_Of_Deceit_Box,Crown Of Deceit Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5564,1; },{},{}
+16185,Raven_Cap_Box,Raven Cap Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5530,1; },{},{}
16247,Dragon_Arhat_Mask_Box,Dragon Arhat Mask Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5565,1; },{},{}
16248,Tiger_Arhat_Mask_Box,Tiger Arhat Mask Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5566,1; },{},{}
-//16249,Knight's_Gift_Box
+16249,Knight_Gift_Box,Knight Gift Box,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
//16250,Valkyrie's_Gift_Box
-//16251,Gemini_Diadem_Box
-//16252,Gemini_Crown_Box
+16251,Gemini_Diadem_Box,Gemini Diadem Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5569,1; },{},{}
+16252,Gemini_Crown_Box,Gemini Crown Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5570,1; },{},{}
+16253,Rabbit_Scroll,Rabbit Scroll,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
16257,Buddah_Scroll,Buddah Scroll,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ packageitem(); },{},{}
-//16258,HD_Bradium_5_Box,
-//16259,HD_Carnium_5_Box,
-//16260,HD_Bradium_10_Box,
-//16261,HD_Carnium_10_Box,
+16258,HD_Bradium_5_Box,HD Bradium 5 Box,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 6226,5; },{},{}
+16259,HD_Carnium_5_Box,HD Carnium 5 Box,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 6225,5; },{},{}
+16260,HD_Bradium_10_Box,HD Bradium 10 Box,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 6226,10; },{},{}
+16261,HD_Carnium_10_Box,HD Carnium 10 Box,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 6225,10; },{},{}
//16262,HD_Bradium_5_Box,
//16263,HD_Carnium_5_Box,
//16264,HD_Bradium_10_Box,
//16265,HD_Carnium_10_Box,
//16267,HE_Battle_Manual_Box
//16268,HE_Bubble_Gum_Box
-//16269,Cancer_Diadem_Box
-//16270,Cancer_Crown_Box,
+16269,Cancer_Diadem_Box,Cancer Diadem Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5581,1; },{},{}
+16270,Cancer_Crown_Box,Cancer Crown Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5582,1; },{},{}
16304,Evil_Incarnation,Evil Incarnation,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ packageitem(); },{},{}
-//16343,Leo_Crown_Box
-//16344,Leo_Diadem_Box
-//16345,Leo_Crown_Box
-//16346,Leo_Diadem_Box
-//16368,Virgo_Crown_Box
+16343,Leo_Crown_Box,Leo Crown Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5588,1; },{},{}
+16344,Leo_Diadem_Box,Leo Diadem Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5589,1; },{},{}
+16345,F_Leo_Crown_Box,F Leo Crown Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5588,1; },{},{}
+16346,F_Leo_Diadem_Box,F Leo Diadem Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5589,1; },{},{}
+16368,Virgo_Crown_Box,Virgo Crown Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5598,1; },{},{}
+16305,Upg_Guard_Box,Upg Guard Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 2149,1; },{},{}
16371,Tw_Aug_Scroll,Tw Aug Scroll,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ packageitem(); },{},{}
16372,F_Clover_Box_Mouth,F Clover Box Mouth,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
16374,Mouth_Bubble_Gum_Box,Mouth Bubble Gum Box,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ packageitem(); },{},{}
@@ -7418,7 +7449,7 @@
16394,HD_Ori_Box10,HD Ori Box10,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 6240,10; },{},{}
16395,HD_Elu_Box5,HD Elu Box5,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 6241,5; },{},{}
16396,HD_Elu_Box10,HD Elu Box10,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 6241,10; },{},{}
-//16397,Virgo_Diadem_Box
+16397,Virgo_Diadem_Box,Virgo Diadem Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 5599,1; },{},{}
//16398,Virgo_Crown_Box
//16399,Virgo_Diadem_Box
16405,Midgard_Coin_Box,Midgard Coin Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 6242,1; },{},{}
@@ -7909,11 +7940,13 @@
18673,Tare_Pope_,Tare Pope,5,20,,300,,0,,1,0xFFFFFFFF,7,2,256,,1,0,817,{ bonus bUnbreakableHelm,0; },{},{}
18674,Planewing_Hat,Planewing Hat,5,20,,200,,3,,1,0xFFFFFFFE,7,2,256,,1,1,11,{ bonus bAgi,3; },{},{}
18675,Green_Apple_Hat,Green Apple Hat,5,20,,200,,3,,1,0xFFFFFFFE,7,2,256,,20,1,11,{ bonus bDex,2; },{},{}
+18676,Hexagon_Spectacles,Hexagon Spectacles,5,20,,400,,3,,0,0xFFFFFFFE,7,2,512,,20,0,822,{ bonus bFlee,2; },{},{}
18677,Cherry_Twig_In_Mouth,Cherry Twig In Mouth,5,20,,200,,0,,0,0xFFFFFFFE,7,2,1,,20,0,823,{},{},{}
18678,Leek_In_Mouth,Leek In Mouth,5,20,,200,,0,,0,0xFFFFFFFE,7,2,1,,20,0,824,{},{},{}
18679,Abacus_In_Mouth,Abacus In Mouth,5,20,,200,,0,,0,0xFFFFFFFE,7,2,1,,20,0,825,{},{},{}
18680,Tw_Frog_Hat,Tw Frog Hat,5,20,,200,,2,,0,0xFFFFFFFF,7,2,256,,35,0,11,{ bonus bAgi,1; },{},{}
18681,Puppy_Ears_Hat,Puppy Ears Hat,5,20,,200,,2,,0,0xFFFFFFFF,7,2,256,,1,1,11,{ bonus bVit,2; },{},{}
+18682,Teardrop,Teardrop,5,20,,100,,1,,0,0xFFFFFFFF,7,2,512,,1,1,828,{ bonus bMaxSP,15; },{},{}
18683,Carrot_In_Mouth,Carrot In Mouth,5,20,,200,,1,,0,0xFFFFFFFF,7,2,1,,1,0,829,{},{},{}
18684,Showy_High_Cap,Showy High Cap,5,20,,200,,3,,1,0xFFFFFFFE,7,2,256,,1,1,11,{ bonus bStr,3; bonus bInt,2; },{},{}
18685,Stardust_Hairband,Stardust Hairband,5,20,,1000,,0,,0,0xFFFFFFFF,7,2,256,,10,0,831,{},{},{}
@@ -7988,6 +8021,7 @@
19500,T_Mr_Smile,T Mr Smile,5,0,,0,,0,,0,0xFFFFFFFF,7,2,6144,,0,0,65,{ bonus bStr,2; },{},{}
19501,T_Spinx_Helm,T Spinx Helm,5,0,,0,,0,,1,0xFFFFFFFF,7,2,5120,,0,0,137,{},{},{}
//
+19502,T_Goggle,T Goggle,5,0,,0,,0,,0,0xFFFFFFFF,7,2,3072,,0,0,1,{},{},{}
19504,T_Sunglasses,T Sunglasses,5,0,,0,,0,,0,0xFFFFFFFF,7,2,2048,,0,0,12,{},{},{}
19505,T_Cigarette,T Cigarette,5,0,,0,,0,,0,0xFFFFFFFF,7,2,4096,,0,0,54,{},{},{}
19506,T_Valkyrie_Feather_Band,T Valkyrie Feather Band,5,0,,0,,0,,0,0xFFFFFFFF,7,2,1024,,0,1,300,{},{},{}
@@ -8015,6 +8049,7 @@
19528,C_Iron_Cain,Costume Iron Cain,5,0,,0,,0,,0,0xFFFFFFFF,7,2,4096,,1,0,53,{ bonus bUnbreakableHelm,0; },{},{}
19529,C_Angel_Wing,Costume Angel Wing,5,0,,0,,0,,0,0xFFFFFFFF,7,2,1024,,1,0,38,{ bonus bUnbreakableHelm,0; bonus bVit,1; bonus bAgi,1; },{},{}
19530,C_Wild_Rose,Costume Wild Rose,5,0,,0,,0,,0,0xFFFFFFFF,7,2,1024,,1,0,541,{ bonus bUnbreakableHelm,0; bonus bAtk,2; bonus bMatk,2; },{},{}
+19531,C_Cube_Mask,Costume Cube Mask,5,0,,0,,0,,0,0xFFFFFFFF,7,2,6144,,0,0,472,{ bonus bUnbreakableHelm,0; },{},{}
19532,C_Red_Bunny_Band,Red Bunny Band,5,0,,0,,0,,0,0xFFFFFFFF,7,2,1024,,1,0,640,{ bonus bUnbreakableHelm,0; bonus bDex,1; },{},{}
19533,C_Spore_Hat,Costume Spore Hat,5,0,,0,,0,,0,0xFFFFFFFF,7,2,1024,,1,0,114,{ bonus bUnbreakableHelm,0; bonus bVit,1; bonus2 bExpAddRace,RC_NonBoss,1; bonus2 bExpAddRace,RC_Boss,1;},{},{}
19534,C_Tha_Despero_Mask,Tha Despero Mask,5,20,,0,,0,,0,0xFFFFFFFF,7,2,513,,1,0,693,{ bonus bAtkRate,1; bonus bMatkRate,1; bonus bHealPower,1; },{},{}
@@ -8038,11 +8073,14 @@
19552,C_Centimental_Flower,Costume Centimental Flower,5,20,,100,,0,,0,0xFFFFFFFF,7,2,4096,,100,0,56,{ bonus bUnbreakableHelm,0; },{},{}
19553,C_Assassin_Mask_,Costume Assassin Mask,5,20,,100,,0,,0,0xFFFFFFFF,7,2,4096,,100,0,180,{ bonus bUnbreakableHelm,0; },{},{}
19573,C_Heart_Wing_Hairband,Costume Heart Wing Hairband,5,0,,0,,0,,0,0xFFFFFFFF,7,2,1024,,1,1,733,{},{},{}
+19574,C_Lord_of_Death,Costume Lord of Death,5,0,,0,,0,,0,0xFFFFFFFF,7,2,3072,,0,1,742,{ bonus bUnbreakableHelm,0; },{},{}
19587,C_King_Poring_Hat,Costume King Poring Hat,5,0,,100,,0,,0,0xFFFFFFFF,7,2,1024,,1,0,905,{ bonus bUnbreakableHelm,0; },{},{}
19650,C_Rainbow_Feather_Deco,Costume Rainbow Feather Deco,5,0,,0,,0,,0,0xFFFFFFFF,7,2,1024,,1,1,934,{},{},{}
+19707,C_Polar_Bear_Cap,Costume Polar Bear Cap,5,20,,0,,0,,0,0xFFFFFFFF,7,2,1024,,0,0,966,{ bonus bUnbreakableHelm,0; },{},{}
20500,T_Archangel_Wing,Archangel Wing,5,0,,0,,0,,0,0xFFFFFFFF,7,2,8192,,1,0,1,{ bonus bUnbreakableHelm,0; },{},{}
20600,Fantastic_Aura,Fantastic Aura,5,0,,0,,0,,0,0xFFFFFFFF,7,2,16384,,1,0,0,{ bonus bUnbreakableHelm,0; },{},{}
20700,Egir_Manteau,Egir Manteau,5,200000,,300,,10,,1,0xFFFFFFFF,7,2,4,,110,1,0,{ bonus bUnbreakableHelm,0; },{},{}
+20711,Manteau_Of_Diego,Manteau Of Diego,5,20,,600,,15,,1,0xFFFFFFFF,7,2,4,,0,1,0,{ bonus bInt,1; bonus bDex,1; bonus bMdef,3; },{},{}
20724,Love_Dad_Wings_2012,Love Dad Wings 2012,5,0,,100,,15,,1,0xFFFFFFFF,7,2,4,,1,1,5,{},{},{}
// More 2-Handed Swords
21000,Upg_Twohand_Sword,Upg Two-Handed Sword,4,20,,1500,100,,1,1,0x00004082,7,2,34,3,1,1,3,{ bonus bBaseAtk,(getrefine()*12); bonus bMatk,(getrefine()*5); if(BaseLevel>70) bonus bBaseAtk,(((BaseLevel-70)/10)*10); },{},{}
diff --git a/db/re/map_zone_db.conf b/db/re/map_zone_db.conf
index 96dbd0c7a..f51fd8fc6 100644
--- a/db/re/map_zone_db.conf
+++ b/db/re/map_zone_db.conf
@@ -9,17 +9,22 @@
//= http://hercules.ws/board/
//====================================================
//= Hercules Map Zone Database [Ind/Hercules]
-//==
+//================ More Information ==================
+//= http://hercules.ws/board/topic/302-introducing-hercules-map-zone-database/
+//= (TODO: replace with wiki link and detail the wiki page in a decent format ^)
+//====================================================
+//================ Description =======================
//= A unlimited number of zones may be created, a zone
//= may be used to create a set of disabled items, disabled skills
-//= and mapflags to be used by as many maps as one chooses,
-//= maps can be linked to a specific zone through the zone mapflag
-//= '<map name><tab>mapflag<tab>zone<tab><zone name>'
-//== available types for 'disabled_skills':
+//= and mapflags to be used by as many maps as one chooses.
+//= Maps can be linked to a specific zone through the zone mapflag
+//= '<map name><tab>mapflag<tab>zone<tab><zone name>'.
+//====================================================
+//= Available types for 'disabled_skills':
//= PLAYER, HOMUN, MERCENARY, MONSTER, PET, ELEMENTAL, MOB_BOSS, CLONE, ALL and NONE
-//== More on
-//= http://hercules.ws/board/topic/302-introducing-hercules-map-zone-database/
-//= (TODO: replace with wiki link and detail the wiki page in a decent format ^)
+//====================================================
+
+
zones: (
{
/* All zone is a dynamic (very special) zone that is forcebly inherited by ALL maps automatically */
diff --git a/db/re/skill_tree.conf b/db/re/skill_tree.conf
index 3cd90f201..4e4aa3c11 100644
--- a/db/re/skill_tree.conf
+++ b/db/re/skill_tree.conf
@@ -8,7 +8,7 @@
//=
//= http://hercules.ws/board/
//================= More Information =================
-// http://hercules.ws/board/topic/1188-skill-tree-db-redesign/ <desc~!>
+// http://hercules.ws/board/topic/1188-skill-tree-db-redesign/
//================ Structure Example =================
/*
Job_Name: { //Job names as in src/map/pc.c (they are hardcoded at the moment so if you want to add a new job you should add it there)
@@ -1947,7 +1947,7 @@ Baby_Swordsman: {
inherit: ( "Swordsman" );
}
Baby_Magician: {
- inherit: ( "Priest" );
+ inherit: ( "Magician" );
}
Baby_Archer: {
inherit: ( "Archer" );
diff --git a/db/sc_config.txt b/db/sc_config.txt
index c286d9cce..4143b8b2e 100644
--- a/db/sc_config.txt
+++ b/db/sc_config.txt
@@ -383,6 +383,12 @@ SC_FULL_THROTTLE, 18
SC_REBOUND, 18
SC_TELEKINESIS_INTENSE,18
+//Guild Auras should not be saved
+SC_LEADERSHIP,2
+SC_GLORYWOUNDS,2
+SC_SOULCOLD,2
+SC_HAWKEYES,2
+
// Unremovable
SC_WEIGHTOVER50, 79
SC_WEIGHTOVER90, 79
diff --git a/db/skill_changematerial_db.txt b/db/skill_changematerial_db.txt
index 35b123f66..72b2b1e17 100644
--- a/db/skill_changematerial_db.txt
+++ b/db/skill_changematerial_db.txt
@@ -1,85 +1,87 @@
// Change Material Database
//
// Structure of Database:
-// ProductID,BaseRate,MakeAmount1,MakeAmountRate1...,MakeAmount5,MakeAmountRate5
-//
+// ProductID,BaseRate,MakeAmount1,MakeAmountRate1,MakeAmount2,MakeAmountRate2
+// MakeAmount3,MakeAmountRate3,MakeAmount4,MakeAmountRate4,MakeAmount5,MakeAmountRate5
+//====================================================
// NOTE:
// Up to 5 ID/Amount pairs can be specified.
// Rate = n/10%
+//====================================================
-703,4,800,2,200 // Hinalle
-958,800,9,1000 // Horrendous_Mouth
-959,800,7,1000 // Rotten_Scale
-960,1000,6,800,9,200 // Nipper
-961,800,3,1000 // Conch
-962,1000,4,800,6,200 // Tentacle
-963,800,3,1000 // Sharp_Scale
-964,800,8,1000 // Crap_Shell
-967,800,4,1000 // Turtle_Shell
-968,800,5,1000 // Voucher_Of_Orcish_Hero
-970,800,9,1000 // Alchol
-971,800,5,1000 // Detrimindexta
-973,800,4,1000 // Counteragent
-974,1000,4,800,6,200 // Mixture
-991,1000,1,500,1,500 // Crystal_Blue
-992,1000,1,500,1,500 // Wind_Of_Verdure
-999,1000,10,1000 // Steel
-1003,500,1,1000 // Coal
-1008,800,6,1000 // Frozen_Heart
-1009,800,4,1000 // Sacred_Marks
-1010,800,8,1000 // Phracon
-1011,800,4,1000 // Emveretarcon
-1012,800,3,1000 // Lizard_Scruff
-1013,9,800,13,200 // Colorful_Shell
-1014,4,800,6,200 // Jaws_Of_Ant
-1016,1000,7,800,10,200 // Rat_Tail
-1019,800,2,1000 // Wooden_Block
-1020,1000,4,800,6,200 // Long_Hair
-1021,800,4,1000 // Dokkaebi_Horn
-1022,1000,2,800,3,200 // Fox_Tail
-1024,800,4,1000 // Chinese_Ink
-1025,800,8,1000 // Spiderweb
-1026,800,4,1000 // Acorn
-1030,800,2,1000 // Tiger_Footskin
-1033,1000,4,800,6,200 // Root_Of_Maneater
-1034,1000,6,800,9,200 // Cobold_Hair
-1035,1000,8,800,12,200 // Dragon_Canine
-1037,800,6,1000 // Dragon_Train
-1038,1000,1,1000 // Petite_Dablofs_Horn
-1040,1000,8,800,12,200 // Elder_Pixie's_Beard
-1041,800,3,1000 // Lantern
-1042,800,6,1000 // Short_Leg
-1043,800,6,1000 // Nail_Of_Orc
-1045,800,8,1000 // Sacred_Masque
-1046,800,4,1000 // Tweezer
-1049,800,6,1000 // Skirt_Of_Virgin
-1050,800,3,1000 // Tendon
-1051,800,7,1000 // Detonator
-1053,1000,6,800,9,200 // Tooth_Of_Ancient_Fish
-1056,800,8,1000 // Grit
-1058,800,5,1000 // Wing_Of_Moth
-1059,1000,5,1000 // Transparent_Cloth
-1061,80,2,1000 // Starsand_Of_Witch
-1061,1000,1,1000 // Starsand_Of_Witch
-1064,800,8,1000 // Reins
-1615,200,1,1000 // Bone_Wand
-2267,1000,1,1000 // Cigar
-2267,1000,1,1000 // Cigar
-7063,1000,1,200,1,200,1,100 // Soft_Feather
-7166,1000,2,1000 // Soft_Silk_Cloth
-13269,1000,5,500,2,250,1,100 // Boost500_To_Throw
-13270,1000,5,500,2,250,1,100 // Full_SwingK_To_Throw
-13271,1000,5,500,2,250,1,100 // Mana_Plus_To_Throw
-13272,1000,5,500,2,250,1,100 // Cure_Free_To_Throw
-13273,1000,5,500,2,250,1,100 // Stamina_Up_M_To_Throw
-13274,1000,5,500,2,250,1,100 // Digestive_F_To_Throw
-13275,1000,10,1000 // HP_Inc_PotS_To_Throw
-13276,1000,10,1000 // HP_Inc_PotM_To_Throw
-13277,1000,10,1000 // HP_Inc_PotL_To_Throw
-13278,1000,10,1000 // SP_Inc_PotS_To_Throw
-13279,1000,10,1000 // SP_Inc_PotM_To_Throw
-13280,1000,10,1000 // SP_Inc_PotL_To_Throw
-13281,1000,10,1000 // En_White_PotZ_To_Throw
-13282,1000,10,1000 // Vitata500_To_Throw
-13283,1000,10,1000 // En_Cel_Juice_To_Throw
+703,4,800,2,200 // Hinalle
+958,800,9,1000 // Horrendous_Mouth
+959,800,7,1000 // Rotten_Scale
+960,1000,6,800,9,200 // Nipper
+961,800,3,1000 // Conch
+962,1000,4,800,6,200 // Tentacle
+963,800,3,1000 // Sharp_Scale
+964,800,8,1000 // Crap_Shell
+967,800,4,1000 // Turtle_Shell
+968,800,5,1000 // Voucher_Of_Orcish_Hero
+970,800,9,1000 // Alchol
+971,800,5,1000 // Detrimindexta
+973,800,4,1000 // Counteragent
+974,1000,4,800,6,200 // Mixture
+991,1000,1,500,1,500 // Crystal_Blue
+992,1000,1,500,1,500 // Wind_Of_Verdure
+999,1000,10,1000 // Steel
+1003,500,1,1000 // Coal
+1008,800,6,1000 // Frozen_Heart
+1009,800,4,1000 // Sacred_Marks
+1010,800,8,1000 // Phracon
+1011,800,4,1000 // Emveretarcon
+1012,800,3,1000 // Lizard_Scruff
+1013,9,800,13,200 // Colorful_Shell
+1014,4,800,6,200 // Jaws_Of_Ant
+1016,1000,7,800,10,200 // Rat_Tail
+1019,800,2,1000 // Wooden_Block
+1020,1000,4,800,6,200 // Long_Hair
+1021,800,4,1000 // Dokkaebi_Horn
+1022,1000,2,800,3,200 // Fox_Tail
+1024,800,4,1000 // Chinese_Ink
+1025,800,8,1000 // Spiderweb
+1026,800,4,1000 // Acorn
+1030,800,2,1000 // Tiger_Footskin
+1033,1000,4,800,6,200 // Root_Of_Maneater
+1034,1000,6,800,9,200 // Cobold_Hair
+1035,1000,8,800,12,200 // Dragon_Canine
+1037,800,6,1000 // Dragon_Train
+1038,1000,1,1000 // Petite_Dablofs_Horn
+1040,1000,8,800,12,200 // Elder_Pixie's_Beard
+1041,800,3,1000 // Lantern
+1042,800,6,1000 // Short_Leg
+1043,800,6,1000 // Nail_Of_Orc
+1045,800,8,1000 // Sacred_Masque
+1046,800,4,1000 // Tweezer
+1049,800,6,1000 // Skirt_Of_Virgin
+1050,800,3,1000 // Tendon
+1051,800,7,1000 // Detonator
+1053,1000,6,800,9,200 // Tooth_Of_Ancient_Fish
+1056,800,8,1000 // Grit
+1058,800,5,1000 // Wing_Of_Moth
+1059,1000,5,1000 // Transparent_Cloth
+1061,80,2,1000 // Starsand_Of_Witch
+1061,1000,1,1000 // Starsand_Of_Witch
+1064,800,8,1000 // Reins
+1615,200,1,1000 // Bone_Wand
+2267,1000,1,1000 // Cigar
+2267,1000,1,1000 // Cigar
+7063,1000,1,200,1,200,1,100 // Soft_Feather
+7166,1000,2,1000 // Soft_Silk_Cloth
+13269,1000,5,500,2,250,1,100 // Boost500_To_Throw
+13270,1000,5,500,2,250,1,100 // Full_SwingK_To_Throw
+13271,1000,5,500,2,250,1,100 // Mana_Plus_To_Throw
+13272,1000,5,500,2,250,1,100 // Cure_Free_To_Throw
+13273,1000,5,500,2,250,1,100 // Stamina_Up_M_To_Throw
+13274,1000,5,500,2,250,1,100 // Digestive_F_To_Throw
+13275,1000,10,1000 // HP_Inc_PotS_To_Throw
+13276,1000,10,1000 // HP_Inc_PotM_To_Throw
+13277,1000,10,1000 // HP_Inc_PotL_To_Throw
+13278,1000,10,1000 // SP_Inc_PotS_To_Throw
+13279,1000,10,1000 // SP_Inc_PotM_To_Throw
+13280,1000,10,1000 // SP_Inc_PotL_To_Throw
+13281,1000,10,1000 // En_White_PotZ_To_Throw
+13282,1000,10,1000 // Vitata500_To_Throw
+13283,1000,10,1000 // En_Cel_Juice_To_Throw
diff --git a/db/spellbook_db.txt b/db/spellbook_db.txt
index 11c447365..c7be7b8db 100644
--- a/db/spellbook_db.txt
+++ b/db/spellbook_db.txt
@@ -1,29 +1,36 @@
// Reading Spellbook Preserve Points Database
//
// Structure of Database:
-// SkillID,PreservePoints,Required Book
-//
-// To add more entries, increase MAX_SKILL_SPELLBOOK_DB in skill.h.
+// SkillID,PreservePoints,Required Book
+//====================================================
+// To add more entries, increase MAX_SKILL_SPELLBOOK_DB in /src/map/skill.h.
+//====================================================
-//Mage
-14,7,6190 //Cold Bolt
-19,7,6189 //Fire Bolt
-20,7,6191 //Lightning Bolt
-21,9,6197 //Thunder Storm
+//================
+// Mage
+//================
+14,7,6190 // Cold Bolt
+19,7,6189 // Fire Bolt
+20,7,6191 // Lightning Bolt
+21,9,6197 // Thunder Storm
-//Wizard
-83,10,6194 //Meteor Storm
-84,9,6198 //Jupitel Thunder
-85,10,6193 //Lord of Vermillion
-86,9,6199 //Water Ball
-89,10,6192 //Storm Gust
-90,8,6201 //Earth Spike
-91,9,6200 //Heaven's Drive
+//================
+// Wizard
+//================
+83,10,6194 // Meteor Storm
+84,9,6198 // Jupitel Thunder
+85,10,6193 // Lord of Vermillion
+86,9,6199 // Water Ball
+89,10,6192 // Storm Gust
+90,8,6201 // Earth Spike
+91,9,6200 // Heaven's Drive
-//Warlock
-2210,8,6205 //Drain Life
-2211,12,6204 //Crimson Rock
-2213,22,6195 //Comet
-2214,12,6203 //Chain Lightning
-2216,12,6202 //Earth Strain
-2217,22,6196 //Tetra Vortex
+//================
+// Warlock
+//================
+2210,8,6205 // Drain Life
+2211,12,6204 // Crimson Rock
+2213,22,6195 // Comet
+2214,12,6203 // Chain Lightning
+2216,12,6202 // Earth Strain
+2217,22,6196 // Tetra Vortex
diff --git a/doc/script_commands.txt b/doc/script_commands.txt
index 471f98d03..2e8afe5dd 100644
--- a/doc/script_commands.txt
+++ b/doc/script_commands.txt
@@ -1063,6 +1063,19 @@ command, use the script command in the following format:
This will display 3 different lines while only consuming a single line in
the relevant script file.
+If you're using a client from 2011-10-10aRagexe.exe onwards, you can also
+use automatic navigation and open URLs in browser by using some HTML-like
+labels. For example:
+
+ mes "go to <NAVI>[Hat Maker]<INFO>izlude,131,148,</INFO></NAVI> to make hats";
+
+Will make the [Hat Maker] text clickable in the client and start a navigation
+to that point.
+
+ mes "You can <URL>Google<INFO>http://www.google.com/</INFO></URL> anything";
+
+Clicking Google will open the browser and point to Google website.
+
---------------------------------------
*next;
@@ -6417,14 +6430,11 @@ may be a number or a string depending on the mapflag in question.
---------------------------------------
-*removemapflag "<map name>",<flag>{,<zone>};
+*removemapflag "<map name>",<flag>;
This command removes a mapflag from a specified map.
See 'setmapflag' for a list of mapflags.
-The zone optional parameter is used to remove the zone from restricted
-mapflags.
-
---------------------------------------
*getmapflag("<map name>",<flag>)
diff --git a/npc/re/mobs/dungeons/moc_pryd.txt b/npc/re/mobs/dungeons/moc_pryd.txt
index dcd5197f1..6fc0dbb8a 100644
--- a/npc/re/mobs/dungeons/moc_pryd.txt
+++ b/npc/re/mobs/dungeons/moc_pryd.txt
@@ -10,6 +10,7 @@
//= 1.1 Official kRO 10.1 spawns [Playtester]
//= 1.2 More accurate spawns [Playtester]
//= 1.3 Corrected MVP spawn variance. [L0ne_W0lf]
+//= 1.4 Added Nightmare spawns. [Euphy]
//============================================================
//==================================================
@@ -62,3 +63,19 @@ moc_pryd06,0,0,0,0 monster Verit 1032,30,5000,0,0
moc_pryd06,0,0,0,0 monster Arclouze 1194,20,5000,0,0
moc_pryd06,0,0,0,0 monster Ancient Mummy 1297,20,5000,0,0
moc_pryd06,102,85,1,1 boss_monster Amon Ra 1511,1,3600000,600000,0
+
+//==================================================
+// moc_prydn1 - Nightmare Mode
+//==================================================
+moc_prydn1,0,0,0,0 monster Nightmare Minorous 2353,60,5000,0,0
+moc_prydn1,0,0,0,0 monster Nightmare Mummy 2354,10,5000,0,0
+moc_prydn1,0,0,0,0 monster Nightmare Verit 2355,50,5000,0,0
+
+//==================================================
+// moc_prydn2 - Nightmare Mode
+//==================================================
+moc_prydn2,0,0,0,0 monster Nightmare Mimic 2356,30,5000,0,0
+moc_prydn2,0,0,0,0 monster Nightmare Verit 2355,30,5000,0,0
+moc_prydn2,0,0,0,0 monster Nightmare Arclouze 2358,20,5000,0,0
+moc_prydn2,0,0,0,0 monster Nightmare Ancient Mummy 2360,20,5000,0,0
+moc_prydn2,102,85,1,1 boss_monster Nightmare Amon Ra 2362,1,3600000,600000,1
diff --git a/sql-files/item_db_re.sql b/sql-files/item_db_re.sql
index 1df585585..5dc94985c 100644
--- a/sql-files/item_db_re.sql
+++ b/sql-files/item_db_re.sql
@@ -3310,6 +3310,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(5658, 'Imp_Hat', 'Imp Hat', 5, 20, 10, 400, 0, 0, 1, 0, 0, 4294967295, 7, 2, 256, 0, 1, 0, 1, 589, 'bonus3 bAutoSpell,"SA_FLAMELAUNCHER",1,5;', '', ''),
(5659, 'Sleeper_Hat', 'Sleeper Hat', 5, 20, 10, 400, 0, 0, 1, 0, 0, 4294967295, 7, 2, 256, 0, 1, 0, 1, 590, 'bonus3 bAutoSpell,"SA_SEISMICWEAPON",1,5;', '', ''),
(5660, 'Gryphon_Hat', 'Gryphon Hat', 5, 20, 10, 400, 0, 0, 1, 0, 0, 4294967295, 7, 2, 256, 0, 1, 0, 1, 591, 'bonus3 bAutoSpell,"SA_LIGHTNINGLOADER",1,5;', '', ''),
+(5661, 'Red_Pirate_Bandana', 'Red Pirate Bandana', 5, 0, 0, 0, 0, 0, 3, 0, 0, 4294967295, 7, 2, 256, 0, 10, 0, 1, 592, 'bonus bStr,1; bonus bDex,1; bonus bAspdRate,2; bonus bVariableCastrate,-2; bonus3 bAutoSpell,"MO_EXTREMITYFIST",1,3;', '', ''),
(5664, 'Filir_Wing', 'Filir''s Pinions', 5, 20, 10, 100, 0, 0, 1, 0, 0, 4294967295, 7, 2, 512, 0, 70, 0, 1, 595, 'bonus bAspdRate,2; bonus bVariableCastrate,-2;', '', ''),
(5665, 'Shaman_Hat', 'Shaman Hat', 5, 20, 10, 400, 0, 0, 1, 0, 1, 4294967295, 7, 2, 256, 0, 1, 0, 1, 596, 'bonus2 bSubEle,Ele_Neutral,3; bonus2 bSubEle,Ele_Water,3; bonus2 bSubEle,Ele_Earth,3; bonus2 bSubEle,Ele_Fire,3; bonus2 bSubEle,Ele_Wind,3; bonus2 bSubEle,Ele_Poison,3; bonus2 bSubEle,Ele_Holy,3; bonus2 bSubEle,Ele_Dark,3; bonus2 bSubEle,Ele_Ghost,3; bonus2 bSubEle,Ele_Undead,3;', '', ''),
(5666, 'Golden_Crown', 'Golden Crown', 5, 20, 10, 500, 0, 0, 8, 0, 1, 4294967295, 7, 2, 256, 0, 1, 0, 1, 597, 'bonus bInt,1; bonus bDex,1; bonus bLuk,1;', '', ''),
@@ -3391,6 +3392,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(5759, 'Noah_Hat', 'Noah Hat', 5, 20, 10, 500, 0, 0, 1, 0, 1, 4294967295, 7, 2, 256, 0, 1, 0, 1, 636, 'bonus bMdef,3;', '', ''),
(5760, 'Driver_Band_', 'Driver Band', 5, 20, 10, 100, 0, 0, 12, 0, 1, 1024, 8, 0, 256, 0, 100, 0, 1, 637, 'bonus bStr,1; bonus bDex,1; bonus bMdef,5; if(readparam(bStr)>=120){ bonus bBaseAtk,10; bonus bCritical,3; }', '', ''),
(5763, 'Red_Bunny_Band', 'Red Bunny Band', 5, 0, 0, 200, 0, 0, 4, 0, 0, 4294967295, 7, 2, 256, 0, 1, 0, 1, 640, 'bonus bAgi,2; bonus bMdef,3;', '', ''),
+(5764, 'Love_Rabbit_Hood', 'Love Rabbit Hood', 5, 20, 10, 300, 0, 0, 1, 0, 1, 4294967295, 7, 2, 769, 0, 10, 0, 0, 549, 'bonus3 bAutoSpell,"PR_GLORIA",3,((readparam(bAgi)>=80)?30:10);', '', ''),
(5765, 'Black_Tail_Ribbon', 'Black Tail Ribbon', 5, 20, 10, 100, 0, 0, 0, 0, 1, 4294967295, 7, 2, 256, 0, 10, 0, 1, 642, 'bonus bMdef,5; bonus bLongAtkDef,10; bonus2 bSubEle,Ele_Neutral,5;', '', ''),
(5766, 'Amistr_Cap', 'Amistr Cap', 5, 20, 10, 500, 0, 0, 4, 0, 0, 4294967295, 7, 2, 256, 0, 50, 0, 1, 643, 'bonus bVit,5; bonus3 bAutoSpellWhenHit,"NPC_STONESKIN",6,20;', '', ''),
(5767, 'Samurai_Mask', 'Samurai Mask', 5, 20, 10, 300, 0, 0, 1, 0, 0, 4294967295, 7, 2, 1, 0, 50, 0, 0, 644, 'bonus2 bAddRace,RC_NonBoss,1; bonus2 bAddRace,RC_Boss,1;', '', ''),
@@ -3401,6 +3403,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(5775, 'Choco_Donut_In_Mouth', 'Choco Donut In Mouth', 5, 20, 10, 50, 0, 0, 1, 0, 0, 4294967295, 7, 2, 1, 0, 1, 0, 0, 653, 'bonus bMaxHP,50;', '', ''),
(5776, 'Blazing_Sun', 'Blazing Sun', 5, 0, 0, 500, 0, 0, 0, 0, 0, 4294967295, 7, 2, 256, 0, 1, 0, 1, 654, 'bonus2 bVariableCastrate,"MG_FIREBOLT",-5; bonus2 bSkillAtk,"MG_FIREBOLT",5; bonus2 bVariableCastrate,"MG_FIREBALL",-5; bonus2 bSkillAtk,"MG_FIREBALL",5; bonus2 bSkillAtk,"MG_FIREWALL",3; bonus2 bSkillAtk,"WZ_METEOR",3; bonus bUseSPrate,5;', '', ''),
(5781, 'Persika', 'Persika', 5, 20, 10, 100, 0, 0, 0, 0, 1, 4294967295, 7, 2, 256, 0, 0, 0, 0, 659, 'bonus bFlee,1; bonus bMaxSP,20;', '', ''),
+(5782, 'Hoplite_Helmet', 'Hoplite Helmet', 5, 20, 10, 700, 0, 0, 4, 0, 1, 4294967295, 7, 2, 769, 0, 1, 0, 1, 660, '', '', ''),
(5786, 'Ancient_Elven_Ear', 'Ancient Elven Ear', 5, 10, 5, 200, 0, 0, 1, 0, 0, 4294967295, 7, 2, 512, 0, 1, 0, 0, 665, 'bonus bLuk,1; bonus bMaxHP,100; bonus bMaxSP,30;', '', ''),
(5787, 'Tha_Maero_Mask', 'Tha Maero Mask', 5, 20, 10, 100, 0, 0, 0, 0, 0, 4294967295, 7, 2, 513, 0, 30, 0, 0, 666, 'bonus bMdef,2;', '', ''),
(5788, '3D_Glasses', '3D Glasses', 5, 20, 10, 100, 0, 0, 1, 0, 0, 4294967295, 7, 2, 512, 0, 1, 0, 0, 661, 'bonus2 bSubEle,Ele_Neutral,5; bonus2 bMagicAddRace,RC_Formless,4;', '', ''),
@@ -3425,6 +3428,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(5810, 'Ph.D_Hat_V', 'Ph.D Hat V', 5, 20, 10, 100, 0, 0, 3, 0, 0, 4294967294, 7, 2, 256, 0, 0, 0, 1, 98, 'bonus bInt,5; bonus bVit,3; bonus bDex,3;', '', ''),
(5811, 'Santa_Beard', 'Santa''s Beard', 5, 20, 10, 100, 0, 0, 5, 0, 0, 4294967295, 7, 2, 1, 0, 0, 0, 0, 25, 'bonus2 bSubRace,RC_Brute,5;', '', ''),
(5812, 'Hat_Of_Expert', 'Hat Of Expert', 5, 0, 0, 0, 0, 0, 2, 0, 0, 4294967295, 7, 2, 256, 0, 0, 0, 1, 16, 'bonus3 bAddEffWhenHit,Eff_Bleeding,500,ATF_TARGET|ATF_SELF; bonus3 bAddEffWhenHit,Eff_Silence,500,ATF_TARGET|ATF_SELF; bonus3 bAddEffWhenHit,Eff_Confusion,500,ATF_TARGET|ATF_SELF; bonus3 bAddEffWhenHit,Eff_Curse,500,ATF_TARGET|ATF_SELF; bonus3 bAddEffWhenHit,Eff_Blind,500,ATF_TARGET|ATF_SELF;', '', ''),
+(5814, 'Ati_Atihan_Hat3', 'Ati Atihan Hat3', 5, 20, 10, 0, 0, 0, 2, 0, 0, 4294967295, 7, 2, 769, 0, 20, 0, 0, 303, '', '', ''),
(5815, 'Cowboy_Hat_J', 'Purple Cowboy Hat', 5, 20, 10, 500, 0, 0, 2, 0, 0, 4294967295, 7, 2, 256, 0, 0, 0, 1, 475, 'bonus bStr,1; bonus2 bSubSize,Size_Small,5; bonus2 bSubSize,Size_Medium,5; bonus2 bSubSize,Size_Large,5;', '', ''),
(5816, 'Classic_Hat_J', 'Classic Hat', 5, 20, 10, 500, 0, 0, 0, 0, 0, 4294967295, 7, 2, 256, 0, 0, 0, 1, 411, '', '', ''),
(5817, 'Valentine_Pledge', 'Valentine Pledge', 5, 20, 10, 0, 0, 0, 3, 0, 0, 4294967295, 7, 2, 136, 0, 0, 0, 0, 0, 'bonus bAllStats,2; bonus bMdef,3; bonus bHealPower,10; bonus2 bAddRace,RC_NonBoss,3; bonus2 bAddRace,RC_Boss,3; bonus bMatkRate,3; bonus bFlee,10; bonus bAspdRate,1;', '', ''),
@@ -3450,15 +3454,16 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(5837, 'Woe_Sunglass', 'Woe Sunglass', 5, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 512, 0, 70, 0, 0, 12, '', '', ''),
(5838, 'Woe_Fin_Helm', 'Woe Fin Helm', 5, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 512, 0, 70, 0, 0, 100, '', '', ''),
(5839, 'Woe_Blush', 'Woe Blush', 5, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 512, 0, 70, 0, 0, 125, '', '', ''),
-(5840, 'Woe_Elven_Ears', 'Woe Elven Ears', 5, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 512, 0, 70, 0, 0, 73, '', '', ''),
+(5840, 'Woe_Elven_Ears', 'Woe Elven Ears', 5, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 512, 0, 70, 0, 0, 73, '', '', '');
+INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
(5841, 'Shaman_Hat_', 'Shaman_Hat', 5, 20, 10, 100, 0, 0, 1, 0, 1, 4294967295, 7, 2, 256, 0, 30, 0, 1, 596, 'bonus bLuk,2; bonus3 bSubEle,Ele_Neutral,3,BF_MAGIC; bonus3 bSubEle,Ele_Water,3,BF_MAGIC; bonus3 bSubEle,Ele_Earth,3,BF_MAGIC; bonus3 bSubEle,Ele_Fire,3,BF_MAGIC; bonus3 bSubEle,Ele_Wind,3,BF_MAGIC; bonus3 bSubEle,Ele_Poison,3,BF_MAGIC; bonus3 bSubEle,Ele_Holy,3,BF_MAGIC; bonus3 bSubEle,Ele_Dark,3,BF_MAGIC; bonus3 bSubEle,Ele_Ghost,3,BF_MAGIC; bonus3 bSubEle,Ele_Undead,3,BF_MAGIC;', '', ''),
(5842, 'Loyal_Ring1', 'Loyal Ring1', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 136, 0, 1, 0, 1, 0, '', '', ''),
(5843, 'Loyal_Ring2', 'Loyal Ring2', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 136, 0, 1, 0, 1, 0, 'bonus bAllStats,2;', '', ''),
-(5844, 'Loyal_Ring3', 'Loyal Ring3', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 136, 0, 1, 0, 1, 0, 'bonus bAllStats,3;', '', '');
-INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
+(5844, 'Loyal_Ring3', 'Loyal Ring3', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 136, 0, 1, 0, 1, 0, 'bonus bAllStats,3;', '', ''),
(5845, 'Buzzy_Ball_Board', 'Buzzy Ball Board', 5, 50, 25, 400, 0, 0, 0, 0, 0, 4294967295, 7, 2, 256, 0, 1, 0, 1, 641, '', '', ''),
(5846, 'Buzzy_Ball_Gum', 'Buzzy Ball Gum', 5, 50, 25, 100, 0, 0, 1, 0, 0, 4294967295, 7, 2, 1, 0, 1, 0, 0, 572, 'bonus bMdef,5;', '', ''),
(5851, 'Summer_Knight', 'Summer Knight', 5, 20, 10, 0, 0, 0, 1, 0, 0, 4294967295, 7, 2, 768, 0, 60, 0, 0, 138, '', '', ''),
+(5852, 'Easter_Egg_Shell', 'Easter Egg Shell', 5, 20, 10, 500, 0, 0, 0, 0, 0, 4294967295, 7, 2, 256, 0, 40, 0, 1, 537, 'bonus bDef,-7; bonus bMdef,-7; bonus2 bHPRegenRate,(MaxHp/100),10000; if (getrefine()>=7) bonus bFlee,2; if (getrefine() >= 9) bonus2 bSPRegenRate,(MaxSp/100),10000;', '', ''),
(5856, 'Passion_FB_Hat', 'Passion FB Hat', 5, 20, 10, 600, 0, 0, 2, 0, 1, 4294967295, 7, 2, 256, 0, 1, 0, 1, 671, 'bonus bStr,2; bonus bDex,2;', '', ''),
(5857, 'Cool_FB_Hat', 'Cool FB Hat', 5, 20, 10, 600, 0, 0, 2, 0, 1, 4294967295, 7, 2, 256, 0, 1, 0, 1, 672, 'bonus bInt,2; bonus bVit,2;', '', ''),
(5858, 'Victory_FB_Hat', 'Victory FB Hat', 5, 20, 10, 600, 0, 0, 2, 0, 1, 4294967295, 7, 2, 256, 0, 1, 0, 1, 673, 'bonus bInt,2; bonus bDex,2;', '', ''),
@@ -3881,7 +3886,8 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(6423, 'Sea_God''s_Wrath', 'Sea God''s Wrath', 3, 20, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(6424, 'Halloween_Fragment', 'Halloween Fragment', 3, 20, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(6425, 'Halloween_Certificate', 'Halloween Certificate', 3, 20, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
-(6426, 'Bad_Canned_Food', 'Bad Canned Food', 3, 20, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
+(6426, 'Bad_Canned_Food', 'Bad Canned Food', 3, 20, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', '');
+INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
(6427, 'Bad_Can_Sack', 'Bad Can Sack', 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(6428, 'Adventure_Card_A', 'Adventure Card A', 3, 20, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(6429, 'Adventure_Card_B', 'Adventure Card B', 3, 20, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
@@ -3890,10 +3896,11 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(6432, 'Full_Bucket', 'Full Bucket', 3, 0, 0, 3000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(6433, 'Cleaning_Brush', 'Cleaning Brush', 3, 20, 10, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(6434, 'Fix_Kit', 'Fix Kit', 3, 0, 0, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
+(6435, 'Fresh_Fruit', 'Fresh Fruit', 3, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(6436, 'Sea_God''s_Call', 'Sea God''s Call', 3, 20, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(6437, 'Scaraba_Perfume', 'Scaraba Perfume', 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
-(6438, 'Unbreakable_Weap', 'Unbreakable Weap', 3, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', '');
-INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
+(6438, 'Unbreakable_Weap', 'Unbreakable Weap', 3, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
+(6439, 'Unbreakable_Def', 'Unbreakable Armor', 3, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(6440, 'General_Lubrication', 'General Lubrication', 3, 20, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(6441, 'High_RankLubricant', 'High Ranked Lubricant', 3, 20, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(6442, 'Octopus_Hunt_Stick', 'Octopus Hunting Stick', 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
@@ -4329,7 +4336,8 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(7289, 'Olivine', 'Peridot', 3, 3000, 1500, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7290, 'Phlogopite', 'Phlogopite', 3, 3000, 1500, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7291, 'Agate', 'Agate', 3, 3000, 1500, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
-(7292, 'Muscovite', 'Muscovite', 3, 3000, 1500, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
+(7292, 'Muscovite', 'Muscovite', 3, 3000, 1500, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', '');
+INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
(7293, 'Rose_Quartz', 'Rose Quartz', 3, 3000, 1500, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7294, 'Turquoise', 'Turquoise', 3, 3000, 1500, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7295, 'Citrine', 'Citrin', 3, 3000, 1500, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
@@ -4342,8 +4350,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(7302, 'KRATHONG', 'Krathong', 3, 2, 1, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7303, 'Bag_Of_Rice', 'Straw Rice Bag', 3, 0, 0, 800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7304, 'Witch''s_Spell_Book', 'Witch''s Spell Scroll', 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
-(7305, 'Authority_Of_Nine_World', 'Symbol of the Nine Realms', 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', '');
-INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
+(7305, 'Authority_Of_Nine_World', 'Symbol of the Nine Realms', 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7306, 'Fragment_Of_Soul', 'Piece of Spirit', 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7307, 'Whisper_Of_Soul', 'Spiritual Whispers', 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7308, 'Witch''s_Potion', 'Witch''s Tonic', 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
@@ -4786,7 +4793,8 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(7808, 'Gold_Hammer', 'God Hammer', 3, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7809, 'Gold_Furnace', 'God Furnace', 3, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7810, 'Yellow_Cat_Eyed_Stone', 'Symbol of Richness', 3, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
-(7811, 'Gold_Anvil', 'Anvil', 3, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
+(7811, 'Gold_Anvil', 'Anvil', 3, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', '');
+INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
(7812, 'Red_Cat_Eyed_Stone', 'Symbol of Bravery', 3, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7813, 'Th_Red_Ring', 'Red Jenoss''s Family Ring', 3, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7814, 'Green_Ring', 'Green Jenoss''s Family Ring', 3, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
@@ -4798,8 +4806,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(7820, 'Morroc_Skin', 'Piece of Morocc Skin', 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7821, 'Green_Apple', 'Green Apple', 3, 20, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7822, 'Whole_Barbecue', 'Whole Barbecue', 3, 20, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
-(7823, 'Meat_Veg_Skewer', 'Meat Veg Skewer', 3, 20, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', '');
-INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
+(7823, 'Meat_Veg_Skewer', 'Meat Veg Skewer', 3, 20, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7824, 'Spirit_Liquor', 'Spirit Liquor', 3, 20, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7825, 'Heroic_Stone', 'Heroic Stone', 3, 20, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(7826, 'Continental_Guard_Paper', 'Continental Guard Paper', 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
@@ -5130,6 +5137,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(11055, 'Basic_Adventure', 'Basic Adventure', 3, 20, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(11056, 'Elemental_Spirit_Guide', 'Elemental Spirit Guide', 3, 1000, 500, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(11057, 'Feb_Sweets', 'Feb Sweets', 3, 20, 10, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
+(11058, 'Novice_Combi_Book', 'Novice Combi Book', 3, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(11500, 'Light_Yellow_Pot', 'Light Yellow Potion', 0, 550, 275, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'itemheal rand(175,235),0;', '', ''),
(11501, 'Light_White_Pot', 'Light White Potion', 0, 1200, 600, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'itemheal rand(325,405),0;', '', ''),
(11502, 'Light_Blue_Pot', 'Light Blue Potion', 0, 5000, 2500, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'itemheal 0,rand(40,60);', '', ''),
@@ -5210,7 +5218,8 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12009, 'Silver_Arrow_Container', 'Silver Arrow Quiver', 2, 2, 1, 250, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 1751,500;', '', ''),
(12010, 'Wind_Arrow_Container', 'Wind Arrow Quiver', 2, 2, 1, 250, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 1755,500;', '', ''),
(12011, 'Stone_Arrow_Container', 'Stone Arrow Quiver', 2, 2, 1, 250, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 1756,500;', '', ''),
-(12012, 'Crystal_Arrow_Container', 'Crystal Arrow Quiver', 2, 2, 1, 250, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 1754,500;', '', ''),
+(12012, 'Crystal_Arrow_Container', 'Crystal Arrow Quiver', 2, 2, 1, 250, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 1754,500;', '', '');
+INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
(12013, 'Shadow_Arrow_Container', 'Shadow Arrow Quiver', 2, 2, 1, 250, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 1767,500;', '', ''),
(12014, 'Imma_Arrow_Container', 'Immaterial Arrow Quiver', 2, 2, 1, 250, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 1757,500;', '', ''),
(12015, 'Rusty_Arrow_Container', 'Rusty Arrow Quiver', 2, 2, 1, 250, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 1762,500;', '', ''),
@@ -5221,8 +5230,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12020, 'Water_Of_Darkness', 'Cursed Water', 11, 2, 1, 30, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'itemskill "ITEM_ENCHANTARMS",8;', '', ''),
(12021, 'Pork_Belly', 'Pork', 0, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'itemheal rand(70,99),0;', '', ''),
(12022, 'Spareribs', 'Galbi', 0, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'itemheal rand(70,99),0;', '', ''),
-(12023, 'Giftbox_China', 'Wrapped Box', 2, 1000, 500, 200, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getrandgroupitem 12023,1;', '', '');
-INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
+(12023, 'Giftbox_China', 'Wrapped Box', 2, 1000, 500, 200, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getrandgroupitem 12023,1;', '', ''),
(12024, 'Red_Pouch_Of_Surprise', 'Red Pouch', 2, 50, 25, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'monster "this",-1,-1,"--ja--",-4,1,"";', '', ''),
(12025, 'Egg_Boy', 'Dano Festival Egg', 2, 1000, 500, 200, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getrandgroupitem 12025,1;', '', ''),
(12026, 'Egg_Girl', 'Dano Festival Egg', 2, 1000, 500, 200, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getrandgroupitem 12026,1;', '', ''),
@@ -5317,10 +5325,10 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12115, 'Elemental_Water', 'Elemental Converter', 11, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'itemskill "ITEM_ENCHANTARMS",2;', '', ''),
(12116, 'Elemental_Earth', 'Elemental Converter', 11, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'itemskill "ITEM_ENCHANTARMS",3;', '', ''),
(12117, 'Elemental_Wind', 'Elemental Converter', 11, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'itemskill "ITEM_ENCHANTARMS",5;', '', ''),
-(12118, 'Resist_Fire', 'Fireproof Potion', 2, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_ARMOR_ELEMENT,1200000,-15,0,20,0;', '', ''),
-(12119, 'Resist_Water', 'Coldproof Potion', 2, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_ARMOR_ELEMENT,1200000,20,0,0,-15;', '', ''),
-(12120, 'Resist_Earth', 'Earthproof Potion', 2, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_ARMOR_ELEMENT,1200000,0,20,-15,0;', '', ''),
-(12121, 'Resist_Wind', 'Thunderproof Potion', 2, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_ARMOR_ELEMENT,1200000,0,-15,0,20;', '', ''),
+(12118, 'Resist_Fire', 'Fireproof Potion', 2, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_ARMORPROPERTY,1200000,-15,0,20,0;', '', ''),
+(12119, 'Resist_Water', 'Coldproof Potion', 2, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_ARMORPROPERTY,1200000,20,0,0,-15;', '', ''),
+(12120, 'Resist_Earth', 'Earthproof Potion', 2, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_ARMORPROPERTY,1200000,0,20,-15,0;', '', ''),
+(12121, 'Resist_Wind', 'Thunderproof Potion', 2, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_ARMORPROPERTY,1200000,0,-15,0,20;', '', ''),
(12122, 'Sesame_Pastry', 'Sesame Pastry', 2, 2, 1, 70, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_FOOD_BASICHIT,1200000,30;', '', ''),
(12123, 'Honey_Pastry', 'Honey Pastry', 2, 2, 1, 70, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_FOOD_BASICAVOIDANCE,1200000,30;', '', ''),
(12124, 'Rainbow_Cake', 'Rainbow Cake', 2, 2, 1, 70, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_BATKFOOD,1200000,10; sc_start SC_MATKFOOD,120000,10;', '', ''),
@@ -5479,7 +5487,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12280, 'Holy_Element_Scroll', 'Holy Elemental Scroll', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'specialeffect2 EF_BENEDICTIO; sc_start SC_BENEDICTIO,300000,1;', '', ''),
(12281, 'Tresure_Box_WoE', 'Event Treasure Box', 2, 20, 10, 150, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
(12282, 'Internet_Cafe1', 'Internet Cafe1', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCALLSTATUS,5400000,3; sc_start SC_PLUSATTACKPOWER,5400000,15; sc_start SC_PLUSMAGICPOWER,5400000,15;', '', ''),
-(12283, 'Internet_Cafe2', 'Internet Cafe2', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCSTR,5400000,8; sc_start SC_INCDEX,5400000,4; sc_start SC_INCAGI,5400000,6; sc_start SC_PLUSATTACKPOWER,5400000,32; sc_start SC_INCFLEE,5400000,5;', '', ''),
+(12283, 'Internet_Cafe2', 'Internet Cafe2', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_CHASEWALK2,5400000,8; sc_start SC_INCDEX,5400000,4; sc_start SC_INCAGI,5400000,6; sc_start SC_PLUSATTACKPOWER,5400000,32; sc_start SC_INCFLEE,5400000,5;', '', ''),
(12284, 'Internet_Cafe3', 'Internet Cafe3', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCINT,5400000,8; sc_start SC_INCVIT,5400000,4; sc_start SC_INCDEX,5400000,6; sc_start SC_PLUSMAGICPOWER,5400000,40;', '', ''),
(12285, 'Internet_Cafe4', 'Internet Cafe4', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCDEX,5400000,8; sc_start SC_INCLUK,5400000,4; sc_start SC_INCAGI,5400000,6; sc_start SC_PLUSATTACKPOWER,5400000,24; sc_start SC_PLUSMAGICPOWER,5400000,24;', '', ''),
(12286, 'Masquerade_Ball_Box2', 'Masquerade Ball Box2', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getrandgroupitem 12286,1;', '', ''),
@@ -5495,7 +5503,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12296, 'PC_Bang_Coin_Box3', 'PC-Room Coin Box', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 2738,1;', '', ''),
(12297, 'PC_Bang_Coin_Box4', 'PC-Room Coin Box', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 2738,2;', '', ''),
(12298, 'SP_Potion', 'SP Consumption Reduction Potion', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_ATKER_BLOOD,3600000,15;', '', ''),
-(12299, 'Mega_Resist_Potion', 'Mega Resist Potion', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_COMMONSC_RESIST,3600000,10;', '', ''),
+(12299, 'Mega_Resist_Potion', 'Mega Resist Potion', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_TARGET_BLOOD,3600000,10;', '', ''),
(12300, 'Wild_Rose_Scroll', 'Wild Rose Contract', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'mercenary_create 1965,1800000;', '', ''),
(12301, 'Doppelganger_Scroll', 'Doppelganger Contract', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'mercenary_create 1966,1800000;', '', ''),
(12302, 'Ygnizem_Scroll', 'Egnigem Cenia Contract', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'mercenary_create 1967,1800000;', '', ''),
@@ -5513,18 +5521,18 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12314, 'Noive_Box', 'Noive Box', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12315, 'Goddess_Bless', 'Goddess Of Blessing', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12316, 'Angel_Bless', 'Angel Of Blessing', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
-(12317, 'Powder_Snow', 'Snow Powder', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'end;', '', ''),
+(12317, 'Powder_Snow', 'Snow Powder', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'end;', '', '');
+INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
(12318, 'Little_Heart', 'Small Hearts', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12319, 'Strawberry_Cake', 'Rune Strawberry Cake', 2, 0, 0, 300, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCATKRATE,600000,5; sc_start SC_INCMATKRATE,600000,5;', '', ''),
-(12320, 'Pineapple_Juice', 'Schwartzwald Pine Jubilee', 2, 0, 0, 300, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCHIT,600000,10; sc_start SC_INCFLEE2,600000,20;', '', ''),
+(12320, 'Pineapple_Juice', 'Schwartzwald Pine Jubilee', 2, 0, 0, 300, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCHIT,600000,10; sc_start SC_PLUSAVOIDVALUE,600000,20;', '', ''),
(12321, 'Spicy_Sandwich', 'Arunafeltz Desert Sandwich', 2, 0, 0, 300, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_CRITICALPERCENT,600000,7;', '', ''),
(12322, 'Chocolate_Pie', 'Chocolate Pie', 0, 0, 0, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'percentheal 5,5;', '', ''),
(12323, 'N_Fly_Wing', 'Novice Fly Wing', 11, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'itemskill "AL_TELEPORT",1;', '', ''),
(12324, 'N_Butterfly_Wing', 'Novice Butterfly Wing', 11, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'itemskill "AL_TELEPORT",3;', '', ''),
(12325, 'N_Magnifier', 'Novice Magnifier', 11, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'itemskill "MC_IDENTIFY",1;', '', ''),
(12326, 'J_Firecracker', 'Large Firecracker', 2, 2, 1, 20, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
-(12327, 'Charm_Of_Luck', 'Charm Of Luck', 2, 1000, 500, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', '');
-INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
+(12327, 'Charm_Of_Luck', 'Charm Of Luck', 2, 1000, 500, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12328, 'Charm_Of_Happiness', 'Charm Of Happiness', 2, 1800, 900, 100, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCLUK,3600000,20;', '', ''),
(12329, 'Recall_MaleGM', 'Summon Male GameMaster Scroll', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'mercenary_create 2000,1800000;', '', ''),
(12330, 'Recall_FemaleGM', 'Summon Female GameMaster Scroll', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'mercenary_create 2001,1800000;', '', ''),
@@ -5535,7 +5543,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12335, 'Yummy_Skewered_Dish', 'Grilled Delicious Skewer', 0, 1000, 500, 350, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'percentheal 60,60;', '', ''),
(12336, 'Baked_Mushroom', 'Grilled Mushroom', 0, 500, 250, 300, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'percentheal 30,30;', '', ''),
(12337, 'Grilled_Sausage', 'Grilled Sausages', 0, 300, 150, 200, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'percentheal 20,20;', '', ''),
-(12338, 'Grilled_Corn', 'Grilled Corn', 2, 100, 50, 100, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCSTR,180000,2; sc_start SC_INCINT,180000,2; sc_start SC_INCAGI,180000,2;', '', ''),
+(12338, 'Grilled_Corn', 'Grilled Corn', 2, 100, 50, 100, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_CHASEWALK2,180000,2; sc_start SC_INCINT,180000,2; sc_start SC_INCAGI,180000,2;', '', ''),
(12339, 'Cherish_Box_Ori', 'Treasure Edition Box', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getrandgroupitem 12339,1;', '', ''),
(12340, 'Mysterious_Rice_Powder', 'Chewy Rice Powder', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'pet 1815;', '', ''),
(12341, 'Special_Alloy_Trap_Box', 'Special Alloy Trap Box', 2, 30000, 15000, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 7940,100;', '', ''),
@@ -5670,7 +5678,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12472, 'F_Convex_Mirror', 'F Convex Mirror', 2, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12473, 'RWC_Parti_Box', 'RWC Parti Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
(12474, 'RWC_Final_Comp_Box', 'RWC Final Comp Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem(12474);', '', ''),
-(12475, 'Cure_Free', 'Cure Free', 2, 20, 10, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_end SC_SILENCE; sc_end SC_BLOODING; sc_end SC_POISON; sc_end SC_CURSE; sc_end SC_ORCISH; sc_end SC_CHANGEUNDEAD; itemheal 500,0;', '', ''),
+(12475, 'Cure_Free', 'Cure Free', 2, 20, 10, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_end SC_SILENCE; sc_end SC_BLOODING; sc_end SC_POISON; sc_end SC_CURSE; sc_end SC_ORCISH; sc_end SC_PROPERTYUNDEAD; itemheal 500,0;', '', ''),
(12476, 'PCBang_Coupon_Box3', 'PCBang Coupon Box3', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12477, 'Gift_Bundle', 'Gift Bundle', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
(12478, 'Chance_Box', 'Chance Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
@@ -5778,6 +5786,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12580, 'Vending_Search_Scroll', 'Universal Catalog Silver', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'searchstores 10,0;', '', ''),
(12581, 'Vending_Search_Scroll2', 'Universal Catalog Gold', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'searchstores 10,1;', '', ''),
(12591, 'Vending_Search_Scroll3', 'Universal Catalog Bronze', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'searchstores 10,1;', '', ''),
+(12595, 'Lucky_Egg_C7', 'Lucky Egg C7', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12601, 'Fresh_Watermelon_Juice', 'Fresh Watermelon Juice', 0, 20, 10, 100, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'percentheal 5,5;', '', ''),
(12612, 'Old_Coin_Bag', 'Old Coin Bag', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12613, 'Improved_Coin_Bag', 'Improved Coin Bag', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getrandgroupitem 12613,1; getrandgroupitem 12613,1; getrandgroupitem 12613,1; getrandgroupitem 12613,1;', '', ''),
@@ -5792,10 +5801,14 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12622, 'Reins_Of_Mount', 'Reins Of Mount', 11, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'setmounting();', '', ''),
(12623, 'Advanced_Weapons_Box', 'Advanced Weapons Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getrandgroupitem 12623,1;', '', ''),
(12624, 'Delicious_Jelly', 'Delicious Jelly', 0, 20, 10, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'percentheal 3,3;', '', ''),
+(12625, 'Sapa_Feat_Cert_Pack', 'Sapa Feat Cert Pack', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12636, 'Malangdo_Canned_Specialties', 'Malangdo Canned Specialties', 2, 20, 10, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'warp "malangdo",140,114;', '', ''),
+(12637, 'Gong_Bug_Pocket', 'Sow Bug Pocket', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 13208,200;', '', ''),
(12642, 'Terra_Mars_100_Box', 'Terra_Mars_100_Box', 0, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 504,100;', '', ''),
+(12643, 'E_Coin_Pack50', 'E Coin Pack50', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 6422,50;', '', ''),
(12646, 'Fried_Octopus_Legs', 'Fried Octopus Legs', 2, 20, 10, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
(12647, 'Sea_Ink', 'Sea Ink', 2, 20, 10, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', ''),
+(12654, 'Lucky_Egg_C9', 'Lucky Egg C9', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12658, 'Transformation_Scroll(Deviruchi)', 'Transformation Scroll(Deviruchi)', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_MONSTER_TRANSFORM,1200000,1109,0,0,0;', '', ''),
(12659, 'Transformation_Scroll(Raydric)', 'Transformation Scroll(Raydric)', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_MONSTER_TRANSFORM,1200000,1276,0,0,0;', '', ''),
(12660, 'Transformation_Scroll(Mavka)', 'Transformation Scroll(Mavka)', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_MONSTER_TRANSFORM,1200000,1884,0,0,0;', '', ''),
@@ -5803,13 +5816,16 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12662, 'Transformation_Scroll(Banshee)', 'Transformation Scroll(Banshee)', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_MONSTER_TRANSFORM,1200000,1867,0,0,0;', '', ''),
(12663, 'Transformation_Scroll(Poring)', 'Transformation Scroll(Poring)', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_MONSTER_TRANSFORM,1200000,1002,0,0,0;', '', ''),
(12664, 'Transformation_Scroll(Golem)', 'Transformation Scroll(Golem)', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start4 SC_MONSTER_TRANSFORM,1200000,1040,0,0,0;', '', ''),
+(12665, 'Grovel_Buff', 'Grovel Buff', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12690, 'Old_C_Album_Helm', 'Old Card Album Helm', 2, 20, 10, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 1, 0, 0, 0, '', '', ''),
(12691, 'Old_C_Album_Armor', 'Old Card Album Armor', 2, 20, 10, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 1, 0, 0, 0, '', '', ''),
(12692, 'Old_C_Album_Shield', 'Old Card Album Shield', 2, 20, 10, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 1, 0, 0, 0, '', '', ''),
(12693, 'Old_C_Album_Garment', 'Old Card Album Garment', 2, 20, 10, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 1, 0, 0, 0, '', '', ''),
(12694, 'Old_C_Album_Shoes', 'Old Card Album Shoes', 2, 20, 10, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 1, 0, 0, 0, '', '', ''),
(12695, 'Old_C_Album_Acc', 'Old Card Album Acc', 2, 20, 10, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 1, 0, 0, 0, '', '', ''),
+(12696, 'RWC_Cele_Fire', 'RWC Celebration Firecracker', 2, 0, 0, 20, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_STRFOOD,10000,3; sc_start SC_VITFOOD,10000,3; sc_start SC_INTFOOD,10000,3; sc_start SC_DEXFOOD,10000,3; sc_start SC_AGIFOOD,10000,3; sc_start SC_LUKFOOD,10000,3;', '', ''),
(12698, 'Old_C_Album_Weapon', 'Old Card Album Weapon', 2, 20, 10, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 1, 0, 0, 0, '', '', ''),
+(12774, 'Empty_Potion_Bottle', 'Empty Potion Bottle', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12818, 'High_Weapon_Box', 'High Weapon Box', 2, 20, 10, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 100, 0, 0, 0, '', '', ''),
(12699, 'Tikbalang_Belt', 'Tikbalang Belt', 2, 20, 10, 50, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'pet 2313;', '', ''),
(12700, 'Upside_Down_Shirt', 'Upside Down Shirt', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'warp "malaya",242,211;', '', ''),
@@ -5853,7 +5869,8 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12738, 'Runstone_Rare', 'Rare Rune', 0, 2, 1, 100, 0, 0, 0, 0, 0, 128, 8, 2, 0, 0, 0, 0, 0, 0, 'makerune 8;', '', ''),
(12739, 'Snow_Flower', 'Snow Flowers', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12740, 'Inc_Str_Scroll', 'Amplification Scroll', 2, 1, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
-(12741, 'Inc_Int_Scroll', 'Intellect Amplification Scroll', 2, 1, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
+(12741, 'Inc_Int_Scroll', 'Intellect Amplification Scroll', 2, 1, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', '');
+INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
(12742, 'Valentine_Gift_Box1', 'Valentine Gift Box', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12743, 'Valentine_Gift_Box2', 'Valentine Gift Box', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12744, 'Chocotate_Box', 'Chocolate Box', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
@@ -5874,8 +5891,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12759, 'Loyal_Ring3_Box', 'Loyal Ring3 Box', 2, 10, 5, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12760, 'Bubble_Gum_Green', 'Bubble Gum Green', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12761, 'Bubble_Gum_Yellow', 'Bubble Gum Yellow', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
-(12762, 'Bubble_Gum_Orange', 'Bubble Gum Orange', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', '');
-INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
+(12762, 'Bubble_Gum_Orange', 'Bubble Gum Orange', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12763, 'Bubble_Gum_Red', 'Bubble Gum Red', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12764, 'Fools_Day_Box_Tw', 'Fools Day Box Tw', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12765, 'Summer_Knight_Box', 'Summer Knight Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
@@ -5888,9 +5904,13 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(12772, 'Cool_Hat_Box2', 'Cool Hat Box2', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
(12773, 'Victory_Hat_Box2', 'Victory Hat Box2', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
(12775, 'Ancient_Spirit_Amulet', 'Ancient Spirit Amulet', 2, 20, 10, 600, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
+(12776, 'Agi_Dish20', 'Agi Dish20', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12786, 'Change_Slot_Card', 'Character Position Change Coupon', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'set SlotChange, SlotChange + 1;', '', ''),
+(12787, 'Diabolic_Scroll', 'Diabolic Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'mercenary_create 2342,1800000;', '', ''),
(12790, 'Char_Rename_Card', 'Character Name Change Coupon', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'set CharRename, CharRename + 1;', '', ''),
+(12791, 'Combat_Pill', 'Combat Pill', 2, 20, 10, 150, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12848, 'Falcon_Flute', 'Falcon Flute', 11, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'if(getskilllv("HT_FALCON")) { if(checkoption(Option_Wug)||checkoption(Option_Wugrider)) end; if(checkfalcon()==1) { setfalcon 0; } else { setfalcon 1; } }', '', ''),
+(12849, 'Combination_Kit', 'Combination Kit', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(12900, 'Battle_Manual_Box', 'Battle Manual Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 12208,10;', '', ''),
(12901, 'Insurance_Package', 'Insurance Package', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 12209,10;', '', ''),
(12902, 'Bubble_Gum_Box', 'Bubble Gum Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 12210,10;', '', ''),
@@ -6054,6 +6074,9 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(13060, 'E_Counter_Dagger_C', 'Counter Dagger', 4, 1, 0, 0, 209, 0, 0, 1, 0, 8454660, 7, 2, 2, 4, 1, 0, 0, 1, '', '', ''),
(13061, 'Black_Wing', 'Black Wing', 4, 20, 10, 600, 142, 0, 0, 1, 1, 131072, 7, 2, 2, 3, 102, 0, 1, 1, 'bonus2 bSkillAtk,"SC_FATALMENACE",30+(getrefine()*2); bonus bMatkRate,(getrefine()*3);', '', ''),
(13062, 'Ancient_Dagger', 'Ancient Dagger', 4, 20, 10, 600, 107, 0, 0, 0, 0, 42950382, 2, 2, 2, 4, 120, 0, 1, 1, 'bonus bMatk,120; bonus bMaxSP,100; bonus bSPrecovRate,5; bonus2 bAddEff2,Eff_Curse,20; bonus3 bAddEff,Eff_Curse,20,ATF_SELF|ATF_SKILL;', '', ''),
+(13063, 'Adventure_Knife', 'Adventure Knife', 4, 0, 0, 0, 60, 0, 0, 1, 0, 33689664, 7, 2, 2, 1, 1, 0, 0, 1, 'bonus bUnbreakableWeapon,0;', '', ''),
+(13064, 'Academy_Knife', 'Academy Knife', 4, 0, 0, 700, 110, 0, 0, 1, 1, 33689664, 7, 2, 2, 1, 1, 0, 1, 1, 'bonus bUnbreakableWeapon,0;', '', ''),
+(13065, 'Academy_Eti_Knife', 'Academy Eti Knife', 4, 0, 0, 1200, 120, 0, 0, 1, 1, 1, 7, 2, 2, 1, 1, 0, 1, 1, 'bonus bUnbreakableWeapon,0;', '', ''),
(13066, 'P_Dagger3', 'Eden Dagger III', 4, 0, 0, 0, 165, 80, 0, 1, 0, 4271865583, 7, 2, 2, 3, 60, 0, 0, 1, '', '', ''),
(13067, 'Caress', 'Keris', 4, 20, 10, 700, 107, 70, 0, 1, 1, 4271865583, 2, 2, 2, 3, 30, 0, 1, 1, 'bonus2 bHpDrainRate,20,10;', '', ''),
(13068, 'Pompano', 'Pompano', 4, 0, 0, 0, 160, 100, 0, 3, 0, 4271865583, 7, 2, 2, 1, 50, 0, 0, 1, 'bonus bUnbreakableWeapon,0; autobonus "{ bonus bBaseAtk,30; }",10,7000,BF_WEAPON,"{ specialeffect2 EF_ENHANCE; }"; autobonus "{ bonus bMatk,20; }",10,7000,BF_MAGIC,"{ specialeffect2 EF_SUFFRAGIUM; }"; if(BaseLevel>99) { bonus bBaseAtk,10; bonus bMatk,10; }', '', ''),
@@ -6061,10 +6084,13 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(13070, 'Scarlet-nail', 'Scarlet-nail', 4, 56000, 28000, 500, 160, 80, 0, 1, 0, 414946, 7, 2, 2, 4, 110, 0, 1, 1, 'bonus bAtkEle,Ele_Fire; bonus2 bAddEff,Eff_Stone,100+(getrefine()*50);', '', ''),
(13071, 'Upg_Dagger', 'Upg Dagger', 4, 20, 10, 600, 55, 0, 0, 1, 1, 4271865583, 7, 2, 2, 3, 1, 0, 1, 1, 'bonus bBaseAtk,(getrefine()*10); bonus bMatk,(getrefine()*5); if(BaseLevel>70) bonus bBaseAtk,(((BaseLevel-70)/10)*5);', '', ''),
(13072, 'Velum_Damascus', 'Vellum Damascus', 4, 20, 10, 1000, 180, 0, 0, 1, 0, 4271865583, 7, 2, 2, 4, 95, 0, 1, 1, 'bonus bAspdRate,getrefine();', '', ''),
+(13073, 'Counter_Dagger_', 'Counter Dagger', 4, 120000, 60000, 550, 140, 0, 0, 1, 1, 8454660, 7, 2, 2, 4, 55, 0, 1, 1, '', '', ''),
(13074, 'Ninja_Sword_Prototype', 'Ninja Sword Prototype', 4, 0, 0, 0, 0, 0, 0, 1, 0, 33554432, 7, 2, 2, 4, 99, 0, 0, 1, '', '', ''),
(13075, 'Kurenai', 'Kurenai', 4, 5000, 2500, 700, 130, 0, 0, 1, 0, 33554432, 7, 2, 2, 3, 99, 0, 1, 1, 'bonus bInt,3;', '', ''),
(13076, 'Nachal_Sword', 'Nachal Sword', 4, 40000, 20000, 600, 120, 100, 0, 1, 1, 33554432, 7, 2, 2, 3, 110, 0, 1, 1, 'bonus bInt,3;', '', ''),
+(13077, 'Kagekiri', 'Kagekiri', 4, 40000, 20000, 600, 50, 120, 0, 1, 0, 74, 7, 2, 2, 4, 100, 0, 1, 1, '', '', ''),
(13078, 'Mikacheuki', 'Mikacheuki', 4, 40000, 20000, 600, 50, 120, 0, 1, 1, 33554432, 7, 2, 2, 4, 100, 0, 1, 1, '', '', ''),
+(13079, 'Metal_Dagger', 'Metal Dagger', 4, 20, 10, 0, 55, 0, 0, 0, 1, 33689664, 7, 2, 2, 3, 1, 0, 1, 1, '', '', ''),
(13100, 'Six_Shooter', 'Six Shooter', 4, 4500, 2250, 400, 30, 0, 0, 7, 1, 16777216, 7, 2, 34, 1, 10, 0, 1, 17, 'bonus bHit,-10;', '', ''),
(13101, 'Six_Shooter_', 'Six Shooter', 4, 4500, 2250, 400, 30, 0, 0, 7, 2, 16777216, 7, 2, 34, 1, 10, 0, 1, 17, 'bonus bHit,-10;', '', ''),
(13102, 'Crimson_Bolt', 'Crimson Bolt', 4, 20000, 10000, 450, 45, 0, 0, 7, 1, 16777216, 7, 2, 34, 2, 35, 0, 1, 17, 'bonus bHit,-10;', '', ''),
@@ -6151,7 +6177,8 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(13273, 'Stamina_Up_M_To_Throw', 'Throwing Muramura M', 10, 100, 50, 10, 0, 0, 0, 0, 0, 262144, 8, 2, 32768, 0, 99, 0, 0, 9, 'sc_start SC_MUSTLE_M,500000,5;', '', ''),
(13274, 'Digestive_F_To_Throw', 'Throwing Falmons F', 10, 100, 50, 10, 0, 0, 0, 0, 0, 262144, 8, 2, 32768, 0, 99, 0, 0, 9, 'sc_start SC_LIFE_FORCE_F,500000,5;', '', ''),
(13275, 'HP_Inc_PotS_To_Throw', 'Throwing Increase HP Potion (Small)', 10, 100, 50, 20, 0, 0, 0, 0, 0, 262144, 8, 2, 32768, 0, 99, 0, 0, 9, 'sc_start SC_INCMHPRATE,500000,1; percentheal 1,0;', '', ''),
-(13276, 'HP_Inc_PotM_To_Throw', 'Throwing Increase HP Potion (Medium)', 10, 100, 50, 40, 0, 0, 0, 0, 0, 262144, 8, 2, 32768, 0, 99, 0, 0, 9, 'sc_start SC_INCMHPRATE,500000,2; percentheal 2,0;', '', ''),
+(13276, 'HP_Inc_PotM_To_Throw', 'Throwing Increase HP Potion (Medium)', 10, 100, 50, 40, 0, 0, 0, 0, 0, 262144, 8, 2, 32768, 0, 99, 0, 0, 9, 'sc_start SC_INCMHPRATE,500000,2; percentheal 2,0;', '', '');
+INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
(13277, 'HP_Inc_PotL_To_Throw', 'Throwing Increase HP Potion (Large)', 10, 100, 50, 80, 0, 0, 0, 0, 0, 262144, 8, 2, 32768, 0, 99, 0, 0, 9, 'sc_start SC_INCMHPRATE,500000,5; percentheal 5,0;', '', ''),
(13278, 'SP_Inc_PotS_To_Throw', 'Throwing Increase SP Potion (Small)', 10, 100, 50, 20, 0, 0, 0, 0, 0, 262144, 8, 2, 32768, 0, 99, 0, 0, 9, 'sc_start SC_INCMSPRATE,500000,2; percentheal 0,2;', '', ''),
(13279, 'SP_Inc_PotM_To_Throw', 'Throwing Increase SP Potion (Medium)', 10, 100, 50, 40, 0, 0, 0, 0, 0, 262144, 8, 2, 32768, 0, 99, 0, 0, 9, 'sc_start SC_INCMSPRATE,500000,4; percentheal 0,4;', '', ''),
@@ -6172,8 +6199,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(13294, 'Explosive_Kunai', 'Explosive Kunai', 10, 100, 50, 30, 50, 0, 0, 0, 0, 33554432, 7, 2, 32768, 0, 100, 0, 0, 7, 'bonus bAtkEle,Ele_Neutral;', '', ''),
(13300, 'Huuma_Bird_Wing', 'Huuma Wing Shuriken', 4, 90000, 45000, 3000, 150, 0, 0, 1, 0, 33554432, 7, 2, 34, 4, 65, 0, 1, 22, 'bonus bUnbreakableWeapon,0; bonus bAtkEle,Ele_Wind; bonus bDex,-2; bonus bAgi,-1;', '', ''),
(13301, 'Huuma_Giant_Wheel', 'Huuma Giant Wheel Shuriken', 4, 40000, 20000, 2500, 50, 0, 0, 1, 3, 33554432, 7, 2, 34, 4, 42, 0, 1, 22, 'bonus bUnbreakableWeapon,0; bonus2 bAddEff,Eff_Bleeding,100;', '', ''),
-(13302, 'Huuma_Giant_Wheel_', 'Huuma Giant Wheel Shuriken', 4, 40000, 20000, 2500, 50, 0, 0, 1, 4, 33554432, 7, 2, 34, 4, 42, 0, 1, 22, 'bonus bUnbreakableWeapon,0; bonus2 bAddEff,Eff_Bleeding,100;', '', '');
-INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
+(13302, 'Huuma_Giant_Wheel_', 'Huuma Giant Wheel Shuriken', 4, 40000, 20000, 2500, 50, 0, 0, 1, 4, 33554432, 7, 2, 34, 4, 42, 0, 1, 22, 'bonus bUnbreakableWeapon,0; bonus2 bAddEff,Eff_Bleeding,100;', '', ''),
(13303, 'Huuma_Blaze', 'Huuma Blaze Shuriken', 4, 78000, 39000, 1500, 185, 0, 0, 1, 0, 33554432, 7, 2, 34, 4, 55, 0, 1, 22, 'bonus bUnbreakableWeapon,0; bonus bAtkEle,Ele_Fire; bonus bDex,-2; bonus3 bAutoSpell,"MG_FIREBALL",5,30;', '', ''),
(13304, 'Huuma_Calm_Mind', 'Huuma Calm Mind', 4, 20, 10, 1550, 112, 0, 0, 1, 2, 33554432, 7, 2, 34, 3, 70, 0, 1, 22, 'bonus bUnbreakableWeapon,0; bonus2 bSkillAtk,"NJ_HUUMA",30; bonus bNoCastCancel,0;', '', ''),
(13305, 'BF_Huuma_Shuriken1', 'Brave Huuma Front Shuriken', 4, 20, 10, 0, 55, 0, 0, 1, 0, 33554432, 7, 2, 34, 3, 80, 0, 1, 22, 'bonus bStr,2; bonus bDex,1; bonus2 bAddRace,RC_DemiHuman,95; bonus2 bIgnoreDefRate,RC_DemiHuman,20; bonus bUnbreakableWeapon,0;', '', ''),
@@ -6220,6 +6246,8 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(13429, 'E_Cutlas_C', 'Cutlus', 4, 2, 1, 0, 185, 0, 0, 1, 0, 414946, 7, 2, 2, 4, 0, 0, 0, 2, 'bonus bStr,2;', '', ''),
(13430, 'E_Solar_Sword_C', 'Solar Sword', 4, 2, 1, 0, 120, 0, 0, 1, 0, 414946, 7, 2, 2, 4, 0, 0, 0, 2, 'bonus bAtkEle,Ele_Fire;', '', ''),
(13431, 'Chrome_Sword', 'Chrome Sword', 4, 20, 10, 2200, 180, 0, 0, 1, 0, 279714, 2, 2, 2, 3, 110, 0, 1, 2, 'bonus bAgi,1;', '', ''),
+(13432, 'Adventure_Sword', 'Adventure Sword', 4, 0, 0, 0, 80, 0, 0, 1, 0, 16514, 7, 2, 2, 1, 1, 0, 0, 2, '', '', ''),
+(13433, 'Academy_Sword', 'Academy Sword', 4, 0, 0, 1200, 120, 0, 0, 1, 1, 16514, 7, 2, 2, 1, 1, 0, 1, 2, '', '', ''),
(13434, 'P_Saber3', 'Eden Saber III', 4, 0, 0, 0, 185, 0, 0, 1, 0, 414946, 7, 2, 2, 3, 60, 0, 0, 2, '', '', ''),
(13500, 'Insurance60_Package', 'Life Insurrance Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14500,10;', '', ''),
(13501, 'Assorted_Scroll_Box', 'Experience Scroll Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
@@ -6451,7 +6479,8 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(13727, 'Silver_Box_', 'Silver Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 7778,1;', '', ''),
(13728, 'Gold_Key1_Box', 'Golden Key 1 Box', 18, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 7779,1;', '', ''),
(13729, 'Gold_Key5_Box', 'Golden Key 5 Box', 18, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 7779,5;', '', ''),
-(13730, 'Silver_Key1_Box', 'Silver Key 1 Box', 18, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 7780,1;', '', ''),
+(13730, 'Silver_Key1_Box', 'Silver Key 1 Box', 18, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 7780,1;', '', '');
+INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
(13731, 'Silver_Key5_Box', 'Silver Key 5 Box', 18, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 7780,5;', '', ''),
(13734, 'Pecopeco_Hairband_Box1', 'Peco Peco Hairband Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5286,1;', '', ''),
(13735, 'Red_Glasses_Box1', 'Red Glasses Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5288,1;', '', ''),
@@ -6479,8 +6508,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(13757, 'B_Mdef_Potion_Box50', 'Big Magic Defense Potion 50 Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14544,50;', '', ''),
(13758, 'Battle_Manual_X3_Box', 'Field Manual 300% Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14545,20;', '', ''),
(13759, 'In_Blue_Herb_Box', 'Blue Herb Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 510,50;', '', ''),
-(13760, 'Honey_Box', 'Honey Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 518,100;', '', '');
-INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
+(13760, 'Honey_Box', 'Honey Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 518,100;', '', ''),
(13761, 'Empty_Bottle_Box', 'Empty Bottle Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 713,500;', '', ''),
(13762, 'In_Royal_Jelly_Box', 'Royal Jelly Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 526,70;', '', ''),
(13763, '5_Anniversary_Coin_Box', 'Coin Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 2709,1;', '', ''),
@@ -6550,7 +6578,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(13827, 'Power_Box2', 'Power Box 2', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 683,1; getitem 12123,1; getitem 12122,1;', '', ''),
(13828, 'Resist_Box1', 'Resist Box 1', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 12118,1; getitem 12119,1;', '', ''),
(13829, 'Resist_Box2', 'Resist Box 2', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 12120,1; getitem 12121,1;', '', ''),
-(13830, 'Stat_Boost1', 'Stat Boost 1', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCSTR,60000,5; sc_start SC_INCAGI,60000,5; sc_start SC_INCVIT,60000,5;', '', ''),
+(13830, 'Stat_Boost1', 'Stat Boost 1', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_CHASEWALK2,60000,5; sc_start SC_INCAGI,60000,5; sc_start SC_INCVIT,60000,5;', '', ''),
(13831, 'Stat_Boost2', 'Stat Boost 2', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCINT,60000,5; sc_start SC_INCLUK,60000,5; sc_start SC_INCDEX,60000,5;', '', ''),
(13832, 'Stat_Boost3', 'Stat Boost 3', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCAGI,60000,5; sc_start SC_INCVIT,60000,5; sc_start SC_INCDEX,60000,5;', '', ''),
(13833, 'Stat_Boost4', 'Stat Boost 4', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCINT,60000,5; sc_start SC_INCVIT,60000,5; sc_start SC_INCDEX,60000,5;', '', ''),
@@ -6772,7 +6800,8 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(14052, 'F_Dun_Tel_Scroll2_Box10', 'Dungeon Teleport Scroll II 10 Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14581,10;', '', ''),
(14053, 'F_Little_Angel_Doll_Box', 'Little Angel Doll Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5324,1;', '', ''),
(14054, 'F_Triple_Poring_Hat_Box', 'Poring 3 Hats Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5255,1;', '', ''),
-(14055, 'F_Nagan_Box', 'Refined Nagan Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'rentitem 13407,604800;', '', ''),
+(14055, 'F_Nagan_Box', 'Refined Nagan Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'rentitem 13407,604800;', '', '');
+INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
(14056, 'F_Skewer_Box', 'Refined Brocca Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'rentitem 1424,604800;', '', ''),
(14057, 'F_Survival_Rod_Box', 'Refined Survivor''s Rod Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'rentitem 1628,604800;', '', ''),
(14058, 'F_Quadrille_Box', 'Refined Quadrille Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'rentitem 1537,604800;', '', ''),
@@ -6799,8 +6828,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(14079, 'F_Holy_Armor_S_Box5', 'Scroll of Holy Armor 5 Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14540,5;', '', ''),
(14080, 'F_Holy_Armor_S_Box10', 'Scroll of Holy Armor 10 Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14540,10;', '', ''),
(14081, 'F_Holy_Armor_S_Box30', 'Scroll of Holy Armor 30 Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14540,30;', '', ''),
-(14082, 'FS_Def_Potion_Box10', 'Small Defense Potion 10 Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14541,10;', '', '');
-INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
+(14082, 'FS_Def_Potion_Box10', 'Small Defense Potion 10 Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14541,10;', '', ''),
(14083, 'FS_Def_Potion_Box30', 'Small Physical Defense Potion 30 Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14541,30;', '', ''),
(14084, 'FS_Def_Potion_Box50', 'Small Physical Defense Potion 50 Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14541,50;', '', ''),
(14085, 'FB_Def_Potion_Box10', 'Big Defense Potion 10 Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14542,10;', '', ''),
@@ -7022,6 +7050,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(14304, 'Scuba_Mask_Box', 'Scuba Mask Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5397,1;', '', ''),
(14306, 'RWC_Special_Scroll', 'RWC Special Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
(14307, 'RWC_Limited_Scroll', 'RWC Limited Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
+(14308, 'Ardor_Scroll', 'Ardor Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(14314, 'Phreeoni_Scroll_Box', 'Phreeoni Scroll Box', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14597,10;', '', ''),
(14315, 'Ghostring_Scroll_Box', 'Ghostring Scroll Box', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14598,10;', '', ''),
(14316, 'July7_Scroll', 'July7 Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
@@ -7033,15 +7062,22 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(14350, 'Mental_Potion50_Box', 'Mental Potion 50 Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14600,50;', '', ''),
(14351, 'Tyr''s_Blessing20_Box', 'Tyr''s Blessing 20 Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14601,20;', '', ''),
(14352, 'Tyr''s_Blessing50_Box', 'Tyr''s Blessing 50 Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14601,50;', '', ''),
+(14361, 'Orc_HeroS_Box', 'Orc HeroS Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 14604,10;', '', ''),
(14363, 'Heart_Scroll', 'Heart Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
+(14372, 'Powder_Snow_Box', 'Powder Snow Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 12317,1;', '', ''),
(14375, 'Holy_Celestial_Axe_Box', 'Celestial Axe Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 1383,1;', '', ''),
(14376, 'Angeling_Pot_Box', 'Angeling Potion Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 12350,1;', '', ''),
(14377, 'Shout_Megaphone_Box', 'Scream Megaphone Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 12351,1;', '', ''),
+(14379, 'Love_Daddy_Box', 'Love Daddy Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5489,1;', '', ''),
(14380, 'Anubis_Helm_Box', 'Anubis Hat Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5490,1;', '', ''),
+(14381, 'Piercing_Box_M', 'Piercing Box M', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 1644,1;', '', ''),
(14393, 'Almighty_Charm_Box', 'Universal Amulet Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 7945,1;', '', ''),
+(14407, 'Xmas_Scroll', 'Xmas Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(14408, 'New_Year_Scroll', 'New Year Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
+(14438, 'Honglyun''s_Sword_Box', 'Honglyun''s Sword Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 13420,1;', '', ''),
(14440, 'Dice_Hat_Box', 'Dice Hat Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5496,1;', '', ''),
(14441, 'King_Tiger_Doll_Hat_Box', 'King Tiger Doll Hat Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5497,1;', '', ''),
+(14442, 'Wondering_Wolf_Helm_Box', 'Wondering Wolf Helm Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5498,1;', '', ''),
(14447, 'Pirate''s_Pride_Box', 'Pirate''s Pride Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5501,1;', '', ''),
(14448, 'Necromencer''s_Hood_Box', 'Necromancer''s Hood Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5502,1;', '', ''),
(14459, 'Rabbit_Magic_Hat_Box', 'Magic Rabbit Hat Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5503,1;', '', ''),
@@ -7049,6 +7085,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(14461, 'Asara_Fairy_Hat_Box', 'Ashura Fairy Hat Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5505,1;', '', ''),
(14466, 'Valentine_Pledge_Box', 'Valentine''s Emblem Box', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
(14469, 'Ox_Tail_Scroll', 'Ox Tail Egg', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
+(14485, 'Academy_Badge_Box', 'Academy Badge Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 2751,1;', '', ''),
(14500, 'Insurance60', 'Life Insurrance Certificate', 2, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_CASH_DEATHPENALTY,3600000,0;', '', ''),
(14508, 'Zeny_Scroll', 'Zeny Pet Egg Scroll', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(14509, 'Light_Center_Pot', 'Light Concentration Potion', 2, 800, 400, 20, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_ATTHASTE_POTION1,1800000,0;', '', ''),
@@ -7080,9 +7117,10 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(14535, 'Med_Life_Potion', 'Medium Life Potion', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'specialeffect2 320; sc_start4 SC_L_LIFEPOTION,600000,-7,4,0,0;', '', ''),
(14536, 'Abrasive', 'Abrasive', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'specialeffect2 182; sc_start SC_CRITICALPERCENT,300000,30;', '', ''),
(14537, 'Regeneration_Potion', 'Regeneration Potion', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'specialeffect2 348; sc_start SC_HEALPLUS,1800000,20;', '', ''),
-(14538, 'Glass_Of_Illusion', 'Glass of Illusion', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'specialeffect2 EF_STEAL; sc_start SC_INCFLEE2,60000,20;', '', ''),
+(14538, 'Glass_Of_Illusion', 'Glass of Illusion', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'specialeffect2 EF_STEAL; sc_start SC_PLUSAVOIDVALUE,60000,20;', '', ''),
(14539, 'Shadow_Armor_S', 'Shadow Armor Scroll', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'specialeffect2 EF_CLOAKING; sc_start4 SC_ARMOR_PROPERTY,1800000,1,Ele_Dark,1,0;', '', ''),
-(14540, 'Holy_Armor_S', 'Holy Armor Scroll', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'specialeffect2 91; sc_start4 SC_ARMOR_PROPERTY,1800000,1,Ele_Holy,1,0;', '', ''),
+(14540, 'Holy_Armor_S', 'Holy Armor Scroll', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'specialeffect2 91; sc_start4 SC_ARMOR_PROPERTY,1800000,1,Ele_Holy,1,0;', '', '');
+INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
(14541, 'S_Def_Potion', 'Small Defense Potion', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'specialeffect2 EF_GUARD; sc_start SC_PROTECT_DEF,60000,3;', '', ''),
(14542, 'B_Def_Potion', 'Big Defense Potion', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'specialeffect2 EF_GUARD; sc_start SC_PROTECT_DEF,180000,3;', '', ''),
(14543, 'S_Mdef_Potion', 'Small Magic Defense Potion', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'specialeffect2 EF_SPELLBREAKER; sc_start SC_PROTECT_MDEF,60000,3;', '', ''),
@@ -7117,8 +7155,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(14572, 'Holy_Marble', 'Holy Marble', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'pet 1385;', '', ''),
(14573, 'Red_Burning_Stone', 'Red Burning Stone', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'pet 1382;', '', ''),
(14574, 'Skull_Of_Vagabond', 'Vagabond''s Skull', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'pet 1208;', '', ''),
-(14575, 'Str_Dish05_', 'Lutie Lady''s Pancake', 0, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_FOOD_STR,1200000,5; percentheal 10,0;', '', '');
-INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
+(14575, 'Str_Dish05_', 'Lutie Lady''s Pancake', 0, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_FOOD_STR,1200000,5; percentheal 10,0;', '', ''),
(14576, 'Int_Dish05_', 'Mastela Fruit Wine', 0, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_FOOD_INT,1200000,5; percentheal 0,10;', '', ''),
(14577, 'Vit_Dish05_', 'Spicy Fried Bao', 0, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_FOOD_VIT,1200000,5; percentheal 10,0;', '', ''),
(14578, 'Agi_Dish05_', 'Steamed Bat Wing in Pumpkin', 0, 2, 1, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_FOOD_AGI,1200000,5; percentheal 6,2;', '', ''),
@@ -7153,6 +7190,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(14607, 'Luxurious_Dinner_W', 'Luxurious Western Food', 2, 10000, 5000, 600, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCALLSTATUS,3600000,3;', '', ''),
(14608, 'Luxurious_Dinner_E', 'Manchu-Han Imperial Feast', 2, 20000, 10000, 1200, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'sc_start SC_INCALLSTATUS,3600000,6;', '', ''),
(14609, 'Spoiled_Cuisine', 'Spoiled Cuisine', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'percentheal 10,10;', '', ''),
+(14613, 'RWC_Scroll_2012', 'RWC Scroll 2012', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(15000, 'Bone_Plate', 'Bone Plate', 5, 20, 10, 1000, 0, 0, 60, 0, 1, 414946, 2, 2, 16, 0, 85, 0, 1, 0, 'bonus bStr,1; bonus bMdef,3; bonus2 bIgnoreDefRate,RC_DemiHuman,10; bonus2 bIgnoreDefRate,RC_Brute,10; bonus3 bAutoSpellWhenHit,"NPC_WIDEBLEEDING",1,10;', '', ''),
(15001, 'Odin''s_Blessing_I', 'Odin''s Blessing', 5, 0, 0, 0, 0, 0, 10, 0, 0, 4294967294, 7, 2, 16, 0, 0, 0, 0, 0, '', '', ''),
(15002, 'Rune_Plate', 'Rune Plate', 5, 0, 0, 0, 0, 0, 95, 0, 1, 128, 7, 2, 16, 0, 99, 0, 1, 0, '', '', ''),
@@ -7186,22 +7224,31 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(15030, 'Judgement_Robe', 'Judgement Robe', 5, 20, 10, 300, 0, 0, 22, 0, 0, 256, 2, 2, 16, 0, 100, 0, 1, 0, 'bonus bDefEle,Ele_Dark; bonus bMdef,10; bonus bStr,2; bonus bInt,1; bonus2 bSubRace,RC_Demon,10; bonus2 bSubRace,RC_Undead,10; bonus2 bSubRace,RC_Formless,-10; bonus2 bSubRace,RC_Brute,-10; bonus2 bSubRace,RC_DemiHuman,-10; bonus2 bSubRace,RC_Plant,-10; bonus2 bSubRace,RC_Insect,-10; bonus2 bSubRace,RC_Fish,-10; bonus2 bSubRace,RC_Angel,-10; bonus2 bSubRace,RC_Dragon,-10;', '', ''),
(15031, 'Paradise_Uniform4', 'Paradise Uniform IV', 5, 0, 0, 0, 0, 0, 58, 0, 0, 4294967295, 7, 2, 16, 0, 60, 0, 0, 0, 'bonus bMdef,5; bonus bMaxHP,500; bonus bMaxSP,50; bonus bStr,1; bonus bInt,1; bonus bDex,1;', '', ''),
(15032, 'Tidon', 'Tidon', 5, 20, 10, 500, 0, 0, 2, 0, 1, 4294967294, 7, 2, 16, 0, 1, 0, 1, 0, 'bonus bMdef,10; bonus2 bResEff,Eff_Stun,1500; bonus2 bResEff,Eff_Freeze,1500; bonus2 bSubRace,RC_NonBoss,5; bonus2 bSubRace,RC_Boss,5;', '', ''),
+(15033, 'Tutorial_Mattle', 'Tutorial Mantle', 5, 0, 0, 600, 0, 0, 37, 0, 0, 0, 7, 2, 16, 0, 1, 0, 0, 0, '', '', ''),
+(15034, 'Tutorial_Mattle_', 'Tutorial Mantle', 5, 0, 0, 600, 0, 0, 37, 0, 1, 0, 7, 2, 16, 0, 1, 0, 0, 0, '', '', ''),
+(15035, '2010_Love_Dad', '2010 Love Dad', 5, 10, 5, 100, 0, 0, 6, 0, 1, 4294967295, 7, 2, 16, 0, 0, 0, 1, 0, 'bonus bAllStats,1; bonus bMaxHP,150; bonus bMaxSP,150; bonus2 bResEff,Eff_Stone,9000; bonus2 bResEff,Eff_Freeze,9000; bonus2 bResEff,Eff_Stun,9000; bonus2 bResEff,Eff_Sleep,9000; bonus2 bResEff,Eff_Silence,9000; bonus2 bResEff,Eff_Curse,9000; bonus2 bResEff,Eff_Confusion,9000; bonus2 bResEff,Eff_Blind,9000; bonus2 bResEff,Eff_Poison,9000; bonus2 bResEff,Eff_Bleeding,9000;', '', ''),
(15036, 'Ur_Plate', 'Urj Plate', 5, 20, 10, 3000, 0, 0, 110, 0, 0, 128, 8, 2, 16, 0, 100, 0, 1, 0, 'bonus bMdef,10; bonus bMaxHPRate,getequiprefinerycnt(EQI_ARMOR); bonus2 bSubRace,RC_DemiHuman,5; bonus2 bSubEle,Ele_Neutral,5;', '', ''),
(15037, 'Peuz_Plate', 'Pertz Plate', 5, 20, 10, 3000, 0, 0, 110, 0, 0, 128, 8, 2, 16, 0, 100, 0, 1, 0, 'bonus bMdef,10; bonus bBaseAtk,20; bonus bFlee,17;', '', ''),
(15038, 'Sabah_Cloth', 'Sabath''s Cloth', 5, 20, 10, 100, 0, 0, 45, 0, 1, 4096, 7, 2, 16, 0, 100, 0, 1, 0, 'bonus bLuk,3; bonus3 bAutoSpell,"ASC_METEORASSAULT",getskilllv("ASC_METEORASSAULT"),10;', '', ''),
(15039, 'Nab_Cloth', 'Nabeu''s Cloth', 5, 20, 10, 100, 0, 0, 45, 0, 1, 4096, 7, 2, 16, 0, 100, 0, 1, 0, 'bonus bStr,2; bonus bInt,2;', '', ''),
+(15040, 'Prison_Uniform', 'Prison Uniform', 5, 10, 5, 1500, 0, 0, 5, 0, 0, 4294967295, 7, 2, 16, 0, 50, 0, 1, 0, 'set .@rate,(getrefine()>10)?10:getrefine(); bonus bHit,.@rate; bonus bFlee,.@rate;', '', ''),
+(15041, 'Boitata_Armor', 'Boitata Armor', 5, 20, 10, 600, 0, 0, 45, 0, 1, 4294967295, 7, 2, 16, 0, 60, 0, 1, 0, 'bonus bMdef,3; bonus2 bSubEle,Ele_Neutral,7; bonus bMaxHPrate,5; bonus bFlee,5;', '', ''),
(15042, 'White_Wing_Suit', 'White Wing Suit', 5, 20, 10, 100, 0, 0, 45, 0, 1, 2048, 7, 2, 16, 0, 100, 0, 1, 0, 'bonus bLongAtkRate,getrefine()*2; bonus bFlee,getrefine();', '', ''),
(15043, 'Black_Wing_Suit', 'Black Wing Suit', 5, 20, 10, 100, 0, 0, 45, 0, 1, 2048, 8, 2, 16, 0, 100, 0, 1, 0, 'bonus bInt,2; bonus bBaseAtk,getequiprefinerycnt(EQI_ARMOR)*3;', '', ''),
(15044, 'Green_Surgical_Gown', 'Green Surgical Gown', 5, 56000, 28000, 660, 0, 0, 66, 0, 1, 262144, 7, 2, 16, 0, 100, 0, 1, 0, 'bonus bDex,1; bonus bMaxSP,30;', '', ''),
+(15045, 'Armor_Of_Valor', 'Armor Of Valor', 5, 0, 0, 0, 0, 0, 4, 0, 0, 4294967295, 7, 2, 16, 0, 0, 0, 0, 0, '', '', ''),
(15046, 'Siege_Plate', 'Siege Plate', 5, 0, 0, 3300, 0, 0, 85, 0, 1, 6571170, 7, 2, 16, 0, 95, 0, 1, 0, 'bonus bMdef,5; bonus2 bSubRace,RC_DemiHuman,2; if(getrefine()>5) { bonus bHealpower2,12; bonus bAddItemHealRate,12; } if(getrefine()>8) { bonus bMaxHPRate,25; }', '', ''),
(15047, 'Siege_Suits', 'Siege Suit', 5, 0, 0, 750, 0, 0, 50, 0, 1, 57564394, 7, 2, 16, 0, 95, 0, 1, 0, 'bonus bMdef,10; bonus2 bSubRace,RC_DemiHuman,2; if(getrefine()>5) { bonus bFlee2,5; bonus bLongAtkDef,20; } if(getrefine()>8) { bonus bMaxHPRate,15; }', '', ''),
(15048, 'Siege_Robe', 'Siege Robe', 5, 0, 0, 500, 0, 0, 40, 0, 1, 8487701, 7, 2, 16, 0, 95, 0, 1, 0, 'bonus bMdef,20; bonus2 bSubRace,RC_DemiHuman,2; if(getrefine()>5) { bonus bFlee,5; bonus bLongAtkDef,15; } if(getrefine()>8) { bonus bMaxHP,1000; bonus bMaxSP,100; }', '', ''),
+(15049, 'Armor_Of_Faith', 'Armor Of Faith', 5, 20, 10, 1000, 0, 0, 0, 0, 0, 4294967295, 7, 2, 16, 0, 50, 0, 1, 0, 'bonus bStr,4; bonus bInt,4; bonus bVit,4; bonus bDex,4; bonus bAgi,4; bonus bLuk,4;', '', ''),
+(15050, 'Armor_Of_Sanctity', 'Armor Of Sanctity', 5, 20, 10, 1000, 0, 0, 0, 0, 0, 4294967295, 7, 2, 16, 0, 50, 0, 1, 0, 'bonus bStr,4; bonus bInt,4; bonus bVit,4; bonus bDex,4; bonus bAgi,4; bonus bLuk,4;', '', ''),
(15051, 'Bakonawa_Armor', 'Bakunawa Scale Armor', 5, 20, 10, 500, 0, 0, 55, 0, 0, 4294967295, 7, 2, 16, 0, 1, 0, 1, 0, 'bonus2 bSubRace,RC_Boss,getrefine()/2; bonus bAllStats,1;', '', ''),
(15052, 'Bayani_Bakonawa_Armor', 'Bayani Bakunawa Scale Armor', 5, 20, 10, 500, 0, 0, 55, 0, 1, 4294967295, 7, 2, 16, 0, 1, 0, 1, 0, 'bonus2 bSubRace,RC_Boss,getrefine()/2; bonus bAllStats,2;', '', ''),
(15053, 'Special_Ninja_Suit', 'Special Ninja Suit', 5, 10000, 5000, 1200, 0, 0, 70, 0, 0, 33554432, 7, 2, 16, 0, 100, 0, 1, 0, 'bonus bAgi,1+(getrefine()/3);', '', ''),
(15054, 'Ninja_Scale_Armor', 'Ninja Scale Armor', 5, 10000, 5000, 1800, 0, 0, 90, 0, 1, 33554432, 7, 2, 16, 0, 100, 0, 1, 0, 'bonus bMaxHPRate,15; bonus bMaxSPRate,-30;', '', ''),
(15055, 'Armor_of_Nothingness', 'Armor of Nothingness', 5, 10000, 5000, 1500, 0, 0, 60, 0, 1, 33554432, 7, 2, 16, 0, 100, 0, 1, 0, 'bonus bAgi,1;', '', ''),
(15056, 'Special_Ninja_Suit_', 'Special Ninja Suit', 5, 10000, 5000, 1200, 0, 0, 70, 0, 1, 33554432, 7, 2, 16, 0, 100, 0, 1, 0, 'bonus bAgi,1+(getrefine()/3);', '', ''),
+(15057, 'Pure_White_Apron', 'Pure White Apron', 5, 20, 10, 600, 0, 0, 50, 0, 1, 4294967295, 7, 2, 16, 0, 0, 0, 1, 0, '', '', ''),
(16000, 'Erde', 'Erde', 4, 20, 10, 500, 130, 0, 0, 1, 2, 312754, 2, 2, 2, 4, 50, 0, 1, 8, 'bonus2 bSkillAtk,"AM_ACIDTERROR",20; bonus2 bSkillAtk,"AM_DEMONSTRATION",20; bonus bMaxSP,50; bonus bHealPower,10;', '', ''),
(16001, 'Red_Square_Bag', 'Red Square Bag', 4, 20, 10, 500, 130, 0, 0, 1, 2, 312754, 2, 2, 2, 3, 50, 0, 1, 8, 'bonus bMaxHP,200; bonus2 bSkillAtk,"AM_ACIDTERROR",20; bonus2 bSkillAtk,"AM_DEMONSTRATION",20; bonus2 bAddMonsterDropItem,501,50; bonus2 bAddMonsterDropItem,502,20; bonus2 bAddMonsterDropItem,503,20; bonus2 bAddMonsterDropItem,504,20; bonus2 bAddMonsterDropItem,505,10; if(readparam(bStr)>=95) bonus2 bAddEff,Eff_Stun,500;', '', ''),
(16002, 'Stunner_C', 'Stunner', 4, 0, 0, 0, 175, 0, 0, 1, 0, 33040, 7, 2, 2, 3, 1, 0, 0, 8, 'bonus2 bAddEff,Eff_Stun,1000; bonus2 bAddSize,Size_Small,40; bonus2 bAddSize,Size_Medium,40; bonus2 bAddSize,Size_Large,40;', '', ''),
@@ -7213,6 +7260,8 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(16008, 'F_Spanner_C', 'Spanner', 4, 2, 1, 0, 150, 0, 0, 1, 0, 33040, 7, 2, 2, 3, 0, 0, 0, 8, '', '', ''),
(16009, 'E_Spanner_C', 'Spanner', 4, 2, 1, 0, 150, 0, 0, 1, 0, 33040, 7, 2, 2, 3, 0, 0, 0, 8, '', '', ''),
(16010, 'Red_Ether_Bag', 'Red Ether Bag', 4, 20, 10, 0, 15, 100, 0, 1, 1, 312754, 7, 2, 2, 3, 102, 0, 1, 8, 'if(getrefine()>=6){ bonus2 bSkillAtk,"GN_CRAZYWEED",20+((getrefine()-5)*2); bonus2 bSkillAtk,"GN_DEMONIC_FIRE",20+((getrefine()-5)*2); } else { bonus2 bSkillAtk,"GN_CRAZYWEED",20; bonus2 bSkillAtk,"GN_DEMONIC_FIRE",20; }', '', ''),
+(16011, 'Adventure_Mace', 'Adventure Mace', 4, 0, 0, 0, 60, 0, 0, 1, 0, 33040, 7, 2, 2, 1, 1, 0, 0, 8, '', '', ''),
+(16012, 'Academy_Mace', 'Academy Mace', 4, 0, 0, 1000, 110, 0, 0, 1, 1, 33040, 7, 2, 2, 1, 1, 0, 1, 8, '', '', ''),
(16013, 'Judgement_Mace1', 'Judgement Mace I', 4, 20, 10, 1200, 140, 180, 0, 1, 2, 256, 2, 2, 2, 3, 100, 0, 1, 8, 'bonus bStr,1; bonus bInt,1; autobonus "{ bonus2 bAddRace,RC_Demon,20; }",10,7000,BF_WEAPON|BF_MAGIC,"{ specialeffect2 EF_BLOODDRAIN; }";', '', ''),
(16014, 'P_Mace3', 'Eden Mace III', 4, 0, 0, 0, 172, 0, 0, 1, 0, 312755, 7, 2, 2, 3, 60, 0, 0, 8, '', '', ''),
(16015, 'Cat_Club', 'Cat Club', 4, 20, 10, 700, 88, 0, 0, 1, 3, 312755, 7, 2, 2, 1, 1, 0, 1, 8, 'bonus2 bAddRace,RC_Brute,15;', '', ''),
@@ -7222,12 +7271,36 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(16019, 'Upg_Mace', 'Upg Mace', 4, 20, 10, 800, 80, 0, 0, 1, 1, 312755, 7, 2, 2, 3, 1, 0, 1, 8, 'bonus bBaseAtk,(getrefine()*10); bonus bHealPower,getrefine(); if(BaseLevel>70) bonus bBaseAtk,(((BaseLevel-70)/10)*5);', '', ''),
(16020, 'Velum_Stunner', 'Vellum Stunner', 4, 20, 10, 1500, 170, 0, 0, 1, 0, 312755, 7, 2, 2, 4, 95, 0, 1, 8, 'bonus bUnbreakableWeapon,0; bonus2 bAddEff,Eff_Stun,1000+getrefine(); bonus bAspdRate,getrefine();', '', ''),
(16021, 'Velum_Flail', 'Vellum Flail', 4, 20, 10, 1500, 170, 0, 0, 1, 0, 312755, 7, 2, 2, 4, 95, 0, 1, 8, 'bonus bUnbreakableWeapon,0; bonus3 bAutoSpell,"NPC_CRITICALWOUND",5,10; bonus bHit,getrefine(); bonus bCritical,getrefine();', '', ''),
+(16022, 'Nemesis_', 'Nemesis ', 4, 20, 10, 900, 120, 0, 0, 1, 2, 33040, 7, 2, 2, 4, 60, 0, 1, 8, 'bonus bUnbreakableWeapon,0; bonus bAtkEle,Ele_Holy;', '', ''),
(16134, 'King_Frog_Hat_Box', 'Frog King Hat Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5528,1;', '', ''),
(16135, 'Evil''s_Bone_Hat_Box', 'Satanic Bone Helm Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5529,1;', '', ''),
+(16186, 'B_Dragon_Hat_Box', 'Baby Dragon Hat Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5531,1;', '', ''),
+(16226, 'Aries_Diadem_Box', 'Aries Diadem Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5545,1;', '', ''),
+(16227, 'Aries_Crown_Box', 'Aries Crown Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5546,1;', '', ''),
+(16230, 'Taurus_Diadem_Box', 'Taurus Diadem Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5549,1;', '', ''),
+(16231, 'Taurus_Crown_Box', 'Taurus Crown Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5550,1;', '', ''),
+(16246, 'Crown_Of_Deceit_Box', 'Crown Of Deceit Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5564,1;', '', ''),
+(16185, 'Raven_Cap_Box', 'Raven Cap Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5530,1;', '', ''),
(16247, 'Dragon_Arhat_Mask_Box', 'Dragon Arhat Mask Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5565,1;', '', ''),
(16248, 'Tiger_Arhat_Mask_Box', 'Tiger Arhat Mask Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5566,1;', '', ''),
+(16249, 'Knight_Gift_Box', 'Knight Gift Box', 2, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
+(16251, 'Gemini_Diadem_Box', 'Gemini Diadem Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5569,1;', '', ''),
+(16252, 'Gemini_Crown_Box', 'Gemini Crown Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5570,1;', '', ''),
+(16253, 'Rabbit_Scroll', 'Rabbit Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(16257, 'Buddah_Scroll', 'Buddah Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
+(16258, 'HD_Bradium_5_Box', 'HD Bradium 5 Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 6226,5;', '', ''),
+(16259, 'HD_Carnium_5_Box', 'HD Carnium 5 Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 6225,5;', '', ''),
+(16260, 'HD_Bradium_10_Box', 'HD Bradium 10 Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 6226,10;', '', ''),
+(16261, 'HD_Carnium_10_Box', 'HD Carnium 10 Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 6225,10;', '', ''),
+(16269, 'Cancer_Diadem_Box', 'Cancer Diadem Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5581,1;', '', ''),
+(16270, 'Cancer_Crown_Box', 'Cancer Crown Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5582,1;', '', ''),
(16304, 'Evil_Incarnation', 'Evil Incarnation', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
+(16343, 'Leo_Crown_Box', 'Leo Crown Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5588,1;', '', ''),
+(16344, 'Leo_Diadem_Box', 'Leo Diadem Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5589,1;', '', ''),
+(16345, 'F_Leo_Crown_Box', 'F Leo Crown Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5588,1;', '', ''),
+(16346, 'F_Leo_Diadem_Box', 'F Leo Diadem Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5589,1;', '', ''),
+(16368, 'Virgo_Crown_Box', 'Virgo Crown Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5598,1;', '', ''),
+(16305, 'Upg_Guard_Box', 'Upg Guard Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 2149,1;', '', ''),
(16371, 'Tw_Aug_Scroll', 'Tw Aug Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
(16372, 'F_Clover_Box_Mouth', 'F Clover Box Mouth', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, '', '', ''),
(16374, 'Mouth_Bubble_Gum_Box', 'Mouth Bubble Gum Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
@@ -7239,6 +7312,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(16394, 'HD_Ori_Box10', 'HD Ori Box10', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 6240,10;', '', ''),
(16395, 'HD_Elu_Box5', 'HD Elu Box5', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 6241,5;', '', ''),
(16396, 'HD_Elu_Box10', 'HD Elu Box10', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 6241,10;', '', ''),
+(16397, 'Virgo_Diadem_Box', 'Virgo Diadem Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 5599,1;', '', ''),
(16405, 'Midgard_Coin_Box', 'Midgard Coin Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 6242,1;', '', ''),
(16406, 'FMidgard_Coin_Box', 'FMidgard Coin Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 6242,1;', '', ''),
(16409, 'Tw_Sep_Scroll', 'Tw Sep Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
@@ -7361,7 +7435,8 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(16996, 'Capri_Crown_Scroll', 'Capri Crown Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
(16997, 'Capri_Crown_Scroll_Box', 'Capri Crown Scroll Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
(16998, 'Archangel_Wings_Box', 'Archangel Wings Box', 2, 0, 0, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 2573,1;', '', ''),
-(16999, 'Bravery_Bag_Box', 'Bravery Bag Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 2576,1;', '', ''),
+(16999, 'Bravery_Bag_Box', 'Bravery Bag Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 2576,1;', '', '');
+INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
(17000, 'Wander_Man_Box5', 'Wander Man Box5', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 12626,5;', '', ''),
(17001, 'Wander_Man_Box10', 'Wander Man Box10', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 12626,10;', '', ''),
(17002, 'Wicked_Nymph_Box5', 'Wicked Nymph Box5', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 12627,5;', '', ''),
@@ -7440,8 +7515,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(17092, 'Upg_Bow_Box', 'Upg Bow Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 18112,1;', '', ''),
(17093, 'Upg_Twohand_Sword_Box', 'Upg Two-Handed Sword Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 21000,1;', '', ''),
(17104, 'HD_Oridecon_50Box', 'HD Oridecon 50Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 6240,50;', '', ''),
-(17105, 'HD_Elunium_50Box', 'HD Elunium 50Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 6241,50;', '', '');
-INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
+(17105, 'HD_Elunium_50Box', 'HD Elunium 50Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 6241,50;', '', ''),
(17106, 'Max_Weight_Up_10Box', 'Max Weight Up 10Box', 18, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'getitem 7776,10;', '', ''),
(17107, 'Gemi_Crown_Scroll', 'Gemi Crown Scroll', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
(17108, 'Gemi_Crown_Scroll_Box', 'Gemi Crown Scroll Box', 2, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'packageitem();', '', ''),
@@ -7685,11 +7759,13 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(18673, 'Tare_Pope_', 'Tare Pope', 5, 20, 10, 300, 0, 0, 0, 0, 1, 4294967295, 7, 2, 256, 0, 1, 0, 0, 817, 'bonus bUnbreakableHelm,0;', '', ''),
(18674, 'Planewing_Hat', 'Planewing Hat', 5, 20, 10, 200, 0, 0, 3, 0, 1, 4294967294, 7, 2, 256, 0, 1, 0, 1, 11, 'bonus bAgi,3;', '', ''),
(18675, 'Green_Apple_Hat', 'Green Apple Hat', 5, 20, 10, 200, 0, 0, 3, 0, 1, 4294967294, 7, 2, 256, 0, 20, 0, 1, 11, 'bonus bDex,2;', '', ''),
+(18676, 'Hexagon_Spectacles', 'Hexagon Spectacles', 5, 20, 10, 400, 0, 0, 3, 0, 0, 4294967294, 7, 2, 512, 0, 20, 0, 0, 822, 'bonus bFlee,2;', '', ''),
(18677, 'Cherry_Twig_In_Mouth', 'Cherry Twig In Mouth', 5, 20, 10, 200, 0, 0, 0, 0, 0, 4294967294, 7, 2, 1, 0, 20, 0, 0, 823, '', '', ''),
(18678, 'Leek_In_Mouth', 'Leek In Mouth', 5, 20, 10, 200, 0, 0, 0, 0, 0, 4294967294, 7, 2, 1, 0, 20, 0, 0, 824, '', '', ''),
(18679, 'Abacus_In_Mouth', 'Abacus In Mouth', 5, 20, 10, 200, 0, 0, 0, 0, 0, 4294967294, 7, 2, 1, 0, 20, 0, 0, 825, '', '', ''),
(18680, 'Tw_Frog_Hat', 'Tw Frog Hat', 5, 20, 10, 200, 0, 0, 2, 0, 0, 4294967295, 7, 2, 256, 0, 35, 0, 0, 11, 'bonus bAgi,1;', '', ''),
(18681, 'Puppy_Ears_Hat', 'Puppy Ears Hat', 5, 20, 10, 200, 0, 0, 2, 0, 0, 4294967295, 7, 2, 256, 0, 1, 0, 1, 11, 'bonus bVit,2;', '', ''),
+(18682, 'Teardrop', 'Teardrop', 5, 20, 10, 100, 0, 0, 1, 0, 0, 4294967295, 7, 2, 512, 0, 1, 0, 1, 828, 'bonus bMaxSP,15;', '', ''),
(18683, 'Carrot_In_Mouth', 'Carrot In Mouth', 5, 20, 10, 200, 0, 0, 1, 0, 0, 4294967295, 7, 2, 1, 0, 1, 0, 0, 829, '', '', ''),
(18684, 'Showy_High_Cap', 'Showy High Cap', 5, 20, 10, 200, 0, 0, 3, 0, 1, 4294967294, 7, 2, 256, 0, 1, 0, 1, 11, 'bonus bStr,3; bonus bInt,2;', '', ''),
(18685, 'Stardust_Hairband', 'Stardust Hairband', 5, 20, 10, 1000, 0, 0, 0, 0, 0, 4294967295, 7, 2, 256, 0, 10, 0, 0, 831, '', '', ''),
@@ -7699,7 +7775,8 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(18689, '2011_RMSC_4', '2011 RMSC 4', 5, 20, 10, 10, 0, 0, 0, 0, 0, 4294967295, 7, 2, 256, 0, 1, 0, 0, 832, 'bonus bUnbreakableHelm,0;', '', ''),
(18690, 'Sirt_Evil_Eye', 'Sirt Evil Eye', 5, 20, 10, 400, 0, 0, 0, 0, 0, 4294967295, 7, 2, 512, 0, 50, 0, 0, 345, 'bonus bUnbreakableHelm,0; bonus bStr,1;', '', ''),
(18691, 'Rising_Black_Dragon', 'Rising Black Dragon', 5, 20, 10, 100, 0, 0, 3, 0, 0, 4294967295, 7, 2, 256, 0, 1, 0, 1, 166, '', '', ''),
-(18692, 'Mike_Hat', 'Mike Hat', 5, 20, 10, 200, 0, 0, 3, 0, 1, 4294967294, 7, 2, 256, 0, 1, 0, 1, 837, 'bonus bDex,2; bonus bLuk,1;', '', ''),
+(18692, 'Mike_Hat', 'Mike Hat', 5, 20, 10, 200, 0, 0, 3, 0, 1, 4294967294, 7, 2, 256, 0, 1, 0, 1, 837, 'bonus bDex,2; bonus bLuk,1;', '', '');
+INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
(18693, 'Sleeping_Kitty_Cat', 'Sleeping Kitty Cat', 5, 20, 10, 200, 0, 0, 4, 0, 1, 4294967294, 7, 2, 256, 0, 20, 0, 1, 838, '', '', ''),
(18694, 'Red_Hood', 'Red Hood', 5, 20, 10, 200, 0, 0, 3, 0, 1, 4294967294, 7, 2, 256, 0, 20, 0, 1, 839, '', '', ''),
(18695, 'Phoenix_Crown', 'Phoenix Crown', 5, 20, 10, 400, 0, 0, 3, 0, 1, 4294967294, 7, 2, 256, 0, 20, 0, 1, 840, 'bonus bInt,2;', '', ''),
@@ -7755,6 +7832,7 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(18873, 'Sweet_Valentine_Out', 'Sweet Valentine Out', 5, 20, 10, 100, 0, 0, 1, 0, 0, 4294967295, 7, 2, 256, 0, 1, 0, 1, 965, '', '', ''),
(19500, 'T_Mr_Smile', 'T Mr Smile', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 6144, 0, 0, 0, 0, 65, 'bonus bStr,2;', '', ''),
(19501, 'T_Spinx_Helm', 'T Spinx Helm', 5, 0, 0, 0, 0, 0, 0, 0, 1, 4294967295, 7, 2, 5120, 0, 0, 0, 0, 137, '', '', ''),
+(19502, 'T_Goggle', 'T Goggle', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 3072, 0, 0, 0, 0, 1, '', '', ''),
(19504, 'T_Sunglasses', 'T Sunglasses', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 2048, 0, 0, 0, 0, 12, '', '', ''),
(19505, 'T_Cigarette', 'T Cigarette', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 4096, 0, 0, 0, 0, 54, '', '', ''),
(19506, 'T_Valkyrie_Feather_Band', 'T Valkyrie Feather Band', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 1024, 0, 0, 0, 1, 300, '', '', ''),
@@ -7780,9 +7858,9 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(19526, 'C_Helm', 'Costume Helm', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 1024, 0, 1, 0, 0, 40, 'bonus bUnbreakableHelm,0;', '', ''),
(19527, 'C_Spiky_Band', 'Costume Spiky Band', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 1024, 0, 1, 0, 0, 43, 'bonus bUnbreakableHelm,0;', '', ''),
(19528, 'C_Iron_Cain', 'Costume Iron Cain', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 4096, 0, 1, 0, 0, 53, 'bonus bUnbreakableHelm,0;', '', ''),
-(19529, 'C_Angel_Wing', 'Costume Angel Wing', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 1024, 0, 1, 0, 0, 38, 'bonus bUnbreakableHelm,0; bonus bVit,1; bonus bAgi,1;', '', '');
-INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_buy`, `price_sell`, `weight`, `atk`, `matk`, `defence`, `range`, `slots`, `equip_jobs`, `equip_upper`, `equip_genders`, `equip_locations`, `weapon_level`, `equip_level_min`, `equip_level_max`, `refineable`, `view`, `script`, `equip_script`, `unequip_script`) VALUES
+(19529, 'C_Angel_Wing', 'Costume Angel Wing', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 1024, 0, 1, 0, 0, 38, 'bonus bUnbreakableHelm,0; bonus bVit,1; bonus bAgi,1;', '', ''),
(19530, 'C_Wild_Rose', 'Costume Wild Rose', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 1024, 0, 1, 0, 0, 541, 'bonus bUnbreakableHelm,0; bonus bAtk,2; bonus bMatk,2;', '', ''),
+(19531, 'C_Cube_Mask', 'Costume Cube Mask', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 6144, 0, 0, 0, 0, 472, 'bonus bUnbreakableHelm,0;', '', ''),
(19532, 'C_Red_Bunny_Band', 'Red Bunny Band', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 1024, 0, 1, 0, 0, 640, 'bonus bUnbreakableHelm,0; bonus bDex,1;', '', ''),
(19533, 'C_Spore_Hat', 'Costume Spore Hat', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 1024, 0, 1, 0, 0, 114, 'bonus bUnbreakableHelm,0; bonus bVit,1; bonus2 bExpAddRace,RC_NonBoss,1; bonus2 bExpAddRace,RC_Boss,1;', '', ''),
(19534, 'C_Tha_Despero_Mask', 'Tha Despero Mask', 5, 20, 10, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 513, 0, 1, 0, 0, 693, 'bonus bAtkRate,1; bonus bMatkRate,1; bonus bHealPower,1;', '', ''),
@@ -7806,15 +7884,19 @@ INSERT INTO `item_db_re` (`id`, `name_english`, `name_japanese`, `type`, `price_
(19552, 'C_Centimental_Flower', 'Costume Centimental Flower', 5, 20, 10, 100, 0, 0, 0, 0, 0, 4294967295, 7, 2, 4096, 0, 100, 0, 0, 56, 'bonus bUnbreakableHelm,0;', '', ''),
(19553, 'C_Assassin_Mask_', 'Costume Assassin Mask', 5, 20, 10, 100, 0, 0, 0, 0, 0, 4294967295, 7, 2, 4096, 0, 100, 0, 0, 180, 'bonus bUnbreakableHelm,0;', '', ''),
(19573, 'C_Heart_Wing_Hairband', 'Costume Heart Wing Hairband', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 1024, 0, 1, 0, 1, 733, '', '', ''),
+(19574, 'C_Lord_of_Death', 'Costume Lord of Death', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 3072, 0, 0, 0, 1, 742, 'bonus bUnbreakableHelm,0;', '', ''),
(19587, 'C_King_Poring_Hat', 'Costume King Poring Hat', 5, 0, 0, 100, 0, 0, 0, 0, 0, 4294967295, 7, 2, 1024, 0, 1, 0, 0, 905, 'bonus bUnbreakableHelm,0;', '', ''),
(19650, 'C_Rainbow_Feather_Deco', 'Costume Rainbow Feather Deco', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 1024, 0, 1, 0, 1, 934, '', '', ''),
+(19707, 'C_Polar_Bear_Cap', 'Costume Polar Bear Cap', 5, 20, 10, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 1024, 0, 0, 0, 0, 966, 'bonus bUnbreakableHelm,0;', '', ''),
(20500, 'T_Archangel_Wing', 'Archangel Wing', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 8192, 0, 1, 0, 0, 1, 'bonus bUnbreakableHelm,0;', '', ''),
(20600, 'Fantastic_Aura', 'Fantastic Aura', 5, 0, 0, 0, 0, 0, 0, 0, 0, 4294967295, 7, 2, 16384, 0, 1, 0, 0, 0, 'bonus bUnbreakableHelm,0;', '', ''),
(20700, 'Egir_Manteau', 'Egir Manteau', 5, 200000, 100000, 300, 0, 0, 10, 0, 1, 4294967295, 7, 2, 4, 0, 110, 0, 1, 0, 'bonus bUnbreakableHelm,0;', '', ''),
+(20711, 'Manteau_Of_Diego', 'Manteau Of Diego', 5, 20, 10, 600, 0, 0, 15, 0, 1, 4294967295, 7, 2, 4, 0, 0, 0, 1, 0, 'bonus bInt,1; bonus bDex,1; bonus bMdef,3;', '', ''),
(20724, 'Love_Dad_Wings_2012', 'Love Dad Wings 2012', 5, 0, 0, 100, 0, 0, 15, 0, 1, 4294967295, 7, 2, 4, 0, 1, 0, 1, 5, '', '', ''),
(21000, 'Upg_Twohand_Sword', 'Upg Two-Handed Sword', 4, 20, 10, 1500, 100, 0, 0, 1, 1, 16514, 7, 2, 34, 3, 1, 0, 1, 3, 'bonus bBaseAtk,(getrefine()*12); bonus bMatk,(getrefine()*5); if(BaseLevel>70) bonus bBaseAtk,(((BaseLevel-70)/10)*10);', '', ''),
(21001, 'Velum_Claymore', 'Vellum Claymore', 4, 20, 10, 3500, 260, 0, 0, 1, 0, 16514, 7, 2, 34, 4, 95, 0, 1, 3, 'bonus2 bAddRace,RC_DemiHuman,80; bonus2 bIgnoreDefRate,RC_DemiHuman,30; if(getrefine()>=6) { bonus2 bAddRace,RC_DemiHuman,40; } if(getrefine()>=9) { autobonus2 "{ bonus bShortWeaponDamageReturn,20; bonus bMagicDamageReturn,20; }",200,1000,BF_WEAPON,"{ specialeffect2 EF_REFLECTSHIELD; }"; }', '', ''),
(21002, 'Velum_Katzbalger', 'Vellum Katzbalger', 4, 20, 10, 2500, 100, 0, 0, 1, 0, 16514, 7, 2, 34, 4, 95, 0, 1, 3, 'bonus2 bSPVanishRate,10000,8;', '', ''),
(21003, 'Muramasa_', 'Muramasa ', 4, 20, 10, 1000, 155, 0, 0, 1, 2, 16514, 7, 2, 34, 4, 48, 0, 1, 3, '', '', ''),
(21004, 'Alca_Bringer_', 'Alca Bringer ', 4, 20, 10, 3400, 280, 0, 0, 2, 2, 125, 7, 2, 34, 3, 100, 0, 1, 3, '', '', ''),
-(21005, 'Metal_Two_Hand_Sword', 'Metal Two Hand Sword', 4, 20, 10, 0, 95, 0, 0, 1, 1, 16514, 7, 2, 34, 3, 1, 0, 1, 3, '', '', '');
+(21005, 'Metal_Two_Hand_Sword', 'Metal Two Hand Sword', 4, 20, 10, 0, 95, 0, 0, 1, 1, 16514, 7, 2, 34, 3, 1, 0, 1, 3, '', '', ''),
+(22540, 'Runstone_Luxanima', 'Lux Anima Rune', 11, 2, 1, 100, 0, 0, 0, 0, 0, 4294967295, 7, 2, 0, 0, 0, 0, 0, 0, 'itemskill "RK_LUXANIMA",1;', '', ''); \ No newline at end of file
diff --git a/sql-files/tools/convert_engine_innodb.sql b/sql-files/tools/convert_engine_innodb.sql
index 5d74b9309..71b58fd34 100644
--- a/sql-files/tools/convert_engine_innodb.sql
+++ b/sql-files/tools/convert_engine_innodb.sql
@@ -20,7 +20,7 @@ ALTER TABLE `guild_storage` ENGINE = InnoDB;
ALTER TABLE `homunculus` ENGINE = InnoDB;
ALTER TABLE `hotkey` ENGINE = InnoDB;
ALTER TABLE `interlog` ENGINE = InnoDB;
-ALTER TABLE `intereg` ENGINE = InnoDB;
+ALTER TABLE `interreg` ENGINE = InnoDB;
ALTER TABLE `inventory` ENGINE = InnoDB;
ALTER TABLE `ipbanlist` ENGINE = InnoDB;
#ALTER TABLE `item_db` ENGINE = InnoDB;
diff --git a/src/char/Makefile.in b/src/char/Makefile.in
index a320579b5..a34fc0b31 100644
--- a/src/char/Makefile.in
+++ b/src/char/Makefile.in
@@ -69,8 +69,8 @@ obj_sql/%.o: %.c $(CHAR_H) $(COMMON_H) $(COMMON_SQL_H) $(MT19937AR_H) $(LIBCONFI
../common/obj_sql/common_sql.a:
@$(MAKE) -C ../common sql
-MT19937AR_OBJ:
+$(MT19937AR_OBJ):
@$(MAKE) -C ../../3rdparty/mt19937ar
-LIBCONFIG_OBJ:
+$(LIBCONFIG_OBJ):
@$(MAKE) -C ../../3rdparty/libconfig
diff --git a/src/common/Makefile.in b/src/common/Makefile.in
index 279f82e5f..dce817e67 100644
--- a/src/common/Makefile.in
+++ b/src/common/Makefile.in
@@ -91,8 +91,8 @@ obj_sql/%.o: %.c $(COMMON_H) $(COMMON_SQL_H) $(LIBCONFIG_H)
# missing object files
-MT19937AR_OBJ:
+$(MT19937AR_OBJ):
@$(MAKE) -C ../../3rdparty/mt19937ar
-LIBCONFIG_OBJ:
+$(LIBCONFIG_OBJ):
@$(MAKE) -C ../../3rdparty/libconfig
diff --git a/src/login/Makefile.in b/src/login/Makefile.in
index 543b31b93..7f5024ef8 100644
--- a/src/login/Makefile.in
+++ b/src/login/Makefile.in
@@ -35,7 +35,7 @@ sql: obj_sql login-server
clean:
@echo " CLEAN login"
- @rm -rf *.o obj_sql ../../login-server@EXEEXT@ ../../login-server@EXEEXT@
+ @rm -rf *.o obj_sql ../../login-server@EXEEXT@
help:
@echo "possible targets are 'sql' 'all' 'clean' 'help'"
@@ -76,8 +76,8 @@ obj_sql/%.o: %.c $(LOGIN_H) $(COMMON_H) $(MT19937AR_H) $(LIBCONFIG_H)
../common/obj_sql/common_sql.a:
@$(MAKE) -C ../common sql
-MT19937AR_OBJ:
+$(MT19937AR_OBJ):
@$(MAKE) -C ../../3rdparty/mt19937ar
-LIBCONFIG_OBJ:
+$(LIBCONFIG_OBJ):
@$(MAKE) -C ../../3rdparty/libconfig
diff --git a/src/map/Makefile.in b/src/map/Makefile.in
index bb99b6a05..d5e362e48 100644
--- a/src/map/Makefile.in
+++ b/src/map/Makefile.in
@@ -59,7 +59,7 @@ sql: $(SQL_DEPENDS)
clean:
@echo " CLEAN map"
- @rm -rf *.o obj_txt obj_sql ../../map-server@EXEEXT@ ../../map-server@EXEEXT@
+ @rm -rf *.o obj_txt obj_sql ../../map-server@EXEEXT@
help:
ifeq ($(HAVE_MYSQL),yes)
@@ -107,8 +107,8 @@ obj_sql/%.o: %.c $(MAP_H) $(COMMON_H) $(MT19937AR_H) $(LIBCONFIG_H)
../common/obj_sql/common_sql.a:
@$(MAKE) -C ../common sql
-MT19937AR_OBJ:
+$(MT19937AR_OBJ):
@$(MAKE) -C ../../3rdparty/mt19937ar
-LIBCONFIG_OBJ:
+$(LIBCONFIG_OBJ):
@$(MAKE) -C ../../3rdparty/libconfig
diff --git a/src/map/atcommand.c b/src/map/atcommand.c
index 950961b29..29bd43d16 100644
--- a/src/map/atcommand.c
+++ b/src/map/atcommand.c
@@ -10260,9 +10260,9 @@ void atcommand_defaults(void) {
atcommand->final = do_final_atcommand;
atcommand->parse = is_atcommand;
+ atcommand->create = atcommand_hp_add;
atcommand->can_use = atcommand_can_use;
atcommand->can_use2 = atcommand_can_use2;
- atcommand->create = atcommand_hp_add;
atcommand->load_groups = atcommand_db_load_groups;
atcommand->exists = atcommand_exists;
atcommand->msg_read = msg_config_read;
diff --git a/src/map/battle.c b/src/map/battle.c
index 7563df975..2fca9ef9c 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -6784,18 +6784,11 @@ void battle_defaults(void) {
battle->calc_damage = battle_calc_damage;
battle->calc_gvg_damage = battle_calc_gvg_damage;
battle->calc_bg_damage = battle_calc_bg_damage;
- battle->calc_base_damage = battle_calc_base_damage;
- battle->calc_misc_attack = battle_calc_misc_attack;
- battle->calc_magic_attack = battle_calc_magic_attack;
battle->weapon_attack = battle_weapon_attack;
+ battle->calc_weapon_attack = battle_calc_weapon_attack;
battle->delay_damage = battle_delay_damage;
battle->drain = battle_drain;
battle->calc_return_damage = battle_calc_return_damage;
- battle->calc_weapon_attack = battle_calc_weapon_attack;
-#ifdef RENEWAL
- battle->calc_weapon_damage = battle_calc_weapon_damage;
-#endif
- battle->calc_defense = battle_calc_defense;
battle->attr_ratio = battle_attr_ratio;
battle->attr_fix = battle_attr_fix;
battle->calc_cardfix = battle_calc_cardfix;
@@ -6803,6 +6796,10 @@ void battle_defaults(void) {
battle->calc_masteryfix = battle_calc_masteryfix;
battle->calc_skillratio = battle_calc_skillratio;
battle->calc_sizefix = battle_calc_sizefix;
+#ifdef RENEWAL
+ battle->calc_weapon_damage = battle_calc_weapon_damage;
+#endif
+ battle->calc_defense = battle_calc_defense;
battle->get_master = battle_get_master;
battle->get_targeted = battle_gettargeted;
battle->get_enemy = battle_getenemy;
@@ -6818,6 +6815,9 @@ void battle_defaults(void) {
battle->delay_damage_sub = battle_delay_damage_sub;
battle->blewcount_bonus = battle_blewcount_bonus;
battle->range_type = battle_range_type;
+ battle->calc_base_damage = battle_calc_base_damage;
+ battle->calc_misc_attack = battle_calc_misc_attack;
+ battle->calc_magic_attack = battle_calc_magic_attack;
battle->adjust_skill_damage = battle_adjust_skill_damage;
battle->add_mastery = battle_addmastery;
battle->calc_drain = battle_calc_drain;
diff --git a/src/map/chrif.h b/src/map/chrif.h
index a6a5fc6bf..b6883d855 100644
--- a/src/map/chrif.h
+++ b/src/map/chrif.h
@@ -68,7 +68,7 @@ struct chrif_interface {
int (*send_users_tochar) (void);
int (*char_online) (struct map_session_data *sd);
int (*changesex) (struct map_session_data *sd);
- int (*chardisconnect) (struct map_session_data *sd);
+ //int (*chardisconnect) (struct map_session_data *sd); // FIXME: Commented out in clif.c, function does not exist
int (*divorce) (int partner_id1, int partner_id2);
int (*removefriend) (int char_id, int friend_id);
diff --git a/src/map/clif.c b/src/map/clif.c
index 18aa476ff..951969a0f 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -7379,7 +7379,7 @@ void clif_guild_belonginfo(struct map_session_data *sd, struct guild *g)
WFIFOL(fd,2)=g->guild_id;
WFIFOL(fd,6)=g->emblem_id;
WFIFOL(fd,10)=g->position[ps].mode;
- WFIFOB(fd,14)=(bool)(sd->state.gmaster_flag==g);
+ WFIFOB(fd,14)=(bool)(sd->state.gmaster_flag == 1);
WFIFOL(fd,15)=0; // InterSID (unknown purpose)
memcpy(WFIFOP(fd,19),g->name,NAME_LENGTH);
WFIFOSET(fd,packet_len(0x16c));
@@ -9633,10 +9633,10 @@ void clif_parse_LoadEndAck(int fd,struct map_session_data *sd)
/* Guild Aura Init */
if( sd->state.gmaster_flag ) {
- guild->aura_refresh(sd,GD_LEADERSHIP,guild->checkskill(sd->state.gmaster_flag,GD_LEADERSHIP));
- guild->aura_refresh(sd,GD_GLORYWOUNDS,guild->checkskill(sd->state.gmaster_flag,GD_GLORYWOUNDS));
- guild->aura_refresh(sd,GD_SOULCOLD,guild->checkskill(sd->state.gmaster_flag,GD_SOULCOLD));
- guild->aura_refresh(sd,GD_HAWKEYES,guild->checkskill(sd->state.gmaster_flag,GD_HAWKEYES));
+ guild->aura_refresh(sd,GD_LEADERSHIP,guild->checkskill(sd->guild,GD_LEADERSHIP));
+ guild->aura_refresh(sd,GD_GLORYWOUNDS,guild->checkskill(sd->guild,GD_GLORYWOUNDS));
+ guild->aura_refresh(sd,GD_SOULCOLD,guild->checkskill(sd->guild,GD_SOULCOLD));
+ guild->aura_refresh(sd,GD_HAWKEYES,guild->checkskill(sd->guild,GD_HAWKEYES));
}
if( sd->state.vending ) { /* show we have a vending */
@@ -10494,9 +10494,9 @@ void clif_parse_WisMessage(int fd, struct map_session_data* sd)
}
// if player ignores everyone
- if (dstsd->state.ignoreAll) {
+ if (dstsd->state.ignoreAll && pc->get_group_level(sd) <= pc->get_group_level(dstsd)) {
if (dstsd->sc.option & OPTION_INVISIBLE && pc->get_group_level(sd) < pc->get_group_level(dstsd))
- clif->wis_end(fd, 1); // 1: target character is not loged in
+ clif->wis_end(fd, 1); // 1: target character is not logged in
else
clif->wis_end(fd, 3); // 3: everyone ignored by target
return;
@@ -11133,13 +11133,16 @@ void clif_parse_StopAttack(int fd,struct map_session_data *sd)
/// Request to move an item from inventory to cart (CZ_MOVE_ITEM_FROM_BODY_TO_CART).
/// 0126 <index>.W <amount>.L
-void clif_parse_PutItemToCart(int fd,struct map_session_data *sd)
-{
+void clif_parse_PutItemToCart(int fd,struct map_session_data *sd) {
+ int flag = 0;
if (pc_istrading(sd))
return;
if (!pc_iscarton(sd))
return;
- pc->putitemtocart(sd,RFIFOW(fd,2)-2,RFIFOL(fd,4));
+ if ( (flag = pc->putitemtocart(sd,RFIFOW(fd,2)-2,RFIFOL(fd,4))) ) {
+ clif->dropitem(sd, RFIFOW(fd,2)-2,0);
+ clif->cart_additem_ack(sd,flag == 1?0x0:0x1);
+ }
}
@@ -11405,7 +11408,7 @@ void clif_parse_UseSkillToId(int fd, struct map_session_data *sd)
if( skill_id >= GD_SKILLBASE ) {
if( sd->state.gmaster_flag )
- skill_lv = guild->checkskill(sd->state.gmaster_flag, skill_id);
+ skill_lv = guild->checkskill(sd->guild, skill_id);
else
skill_lv = 0;
} else {
@@ -11861,7 +11864,7 @@ void clif_parse_ResetChar(int fd, struct map_session_data *sd) {
if( RFIFOW(fd,2) )
sprintf(cmd,"%cskreset",atcommand->at_symbol);
else
- sprintf(cmd,"%streset",atcommand->at_symbol);
+ sprintf(cmd,"%cstreset",atcommand->at_symbol);
atcommand->parse(fd, sd, cmd, 1);
}
@@ -17582,7 +17585,18 @@ void clif_skill_cooldown_list(int fd, struct skill_cd* cd) {
WFIFOSET(fd,4+(offset*count));
}
-
+/* [Ind/Hercules] - Data Thanks to Yommy
+ * - ADDITEM_TO_CART_FAIL_WEIGHT = 0x0
+ * - ADDITEM_TO_CART_FAIL_COUNT = 0x1
+ */
+void clif_cart_additem_ack(struct map_session_data *sd, int flag) {
+ struct packet_cart_additem_ack p;
+
+ p.PacketType = cart_additem_ackType;
+ p.result = (char)flag;
+
+ clif->send(&p,sizeof(p), &sd->bl, SELF);
+}
/* */
unsigned short clif_decrypt_cmd( int cmd, struct map_session_data *sd ) {
if( sd ) {
@@ -17919,6 +17933,9 @@ void clif_defaults(void) {
clif->addcards2 = clif_addcards2;
clif->item_sub = clif_item_sub;
clif->getareachar_item = clif_getareachar_item;
+ clif->cart_additem_ack = clif_cart_additem_ack;
+ clif->cashshop_load = clif_cashshop_db;
+ clif->package_announce = clif_package_item_announce;
/* unit-related */
clif->clearunit_single = clif_clearunit_single;
clif->clearunit_area = clif_clearunit_area;
@@ -18319,19 +18336,6 @@ void clif_defaults(void) {
/* elemental-related */
clif->elemental_info = clif_elemental_info;
clif->elemental_updatestatus = clif_elemental_updatestatus;
- /* Hercules Channel System */
- clif->chsys_create = clif_hercules_chsys_create;
- clif->chsys_msg = clif_hercules_chsys_msg;
- clif->chsys_msg2 = clif_hercules_chsys_msg2;
- clif->chsys_send = clif_hercules_chsys_send;
- clif->chsys_join = clif_hercules_chsys_join;
- clif->chsys_left = clif_hercules_chsys_left;
- clif->chsys_delete = clif_hercules_chsys_delete;
- clif->chsys_mjoin = clif_hercules_chsys_mjoin;
- clif->chsys_quit = clif_hercules_chsys_quit;
- clif->chsys_quitg = clif_hercules_chsys_quitg;
- clif->chsys_gjoin = clif_hercules_chsys_gjoin;
- clif->chsys_gleave = clif_hercules_chsys_gleave;
/* bgqueue */
clif->bgqueue_ack = clif_bgqueue_ack;
clif->bgqueue_notice_delete = clif_bgqueue_notice_delete;
@@ -18346,10 +18350,21 @@ void clif_defaults(void) {
clif->notify_time = clif_notify_time;
clif->user_count = clif_user_count;
clif->noask_sub = clif_noask_sub;
- clif->cashshop_load = clif_cashshop_db;
- clif->package_announce = clif_package_item_announce;
clif->bc_ready = clif_bc_ready;
clif->undisguise_timer = clif_undisguise_timer;
+ /* Hercules Channel System */
+ clif->chsys_create = clif_hercules_chsys_create;
+ clif->chsys_msg = clif_hercules_chsys_msg;
+ clif->chsys_msg2 = clif_hercules_chsys_msg2;
+ clif->chsys_send = clif_hercules_chsys_send;
+ clif->chsys_join = clif_hercules_chsys_join;
+ clif->chsys_left = clif_hercules_chsys_left;
+ clif->chsys_delete = clif_hercules_chsys_delete;
+ clif->chsys_mjoin = clif_hercules_chsys_mjoin;
+ clif->chsys_quit = clif_hercules_chsys_quit;
+ clif->chsys_quitg = clif_hercules_chsys_quitg;
+ clif->chsys_gjoin = clif_hercules_chsys_gjoin;
+ clif->chsys_gleave = clif_hercules_chsys_gleave;
/*------------------------
*- Parse Incoming Packet
*------------------------*/
@@ -18387,6 +18402,7 @@ void clif_defaults(void) {
clif->pKickFromChat = clif_parse_KickFromChat;
clif->pChatLeave = clif_parse_ChatLeave;
clif->pTradeRequest = clif_parse_TradeRequest;
+ clif->chann_config_read = read_channels_config;
clif->pTradeAck = clif_parse_TradeAck;
clif->pTradeAddItem = clif_parse_TradeAddItem;
clif->pTradeOk = clif_parse_TradeOk;
@@ -18441,7 +18457,6 @@ void clif_defaults(void) {
clif->pLeaveParty = clif_parse_LeaveParty;
clif->pRemovePartyMember = clif_parse_RemovePartyMember;
clif->pPartyChangeOption = clif_parse_PartyChangeOption;
- clif->chann_config_read = read_channels_config;
clif->pPartyMessage = clif_parse_PartyMessage;
clif->pPartyChangeLeader = clif_parse_PartyChangeLeader;
clif->pPartyBookingRegisterReq = clif_parse_PartyBookingRegisterReq;
@@ -18546,17 +18561,19 @@ void clif_defaults(void) {
clif->pDebug = clif_parse_debug;
clif->pSkillSelectMenu = clif_parse_SkillSelectMenu;
clif->pMoveItem = clif_parse_MoveItem;
+ /* dull */
+ clif->pDull = clif_parse_dull;
+ /* BGQueue */
+ clif->pBGQueueRegister = clif_parse_bgqueue_register;
+ clif->pBGQueueCheckState = clif_parse_bgqueue_checkstate;
+ clif->pBGQueueRevokeReq = clif_parse_bgqueue_revoke_req;
+ clif->pBGQueueBattleBeginAck = clif_parse_bgqueue_battlebegin_ack;
/* RagExe Cash Shop [Ind/Hercules] */
clif->pCashShopOpen = clif_parse_CashShopOpen;
clif->pCashShopClose = clif_parse_CashShopClose;
clif->pCashShopReqTab = clif_parse_CashShopReqTab;
clif->pCashShopSchedule = clif_parse_CashShopSchedule;
clif->pCashShopBuy = clif_parse_CashShopBuy;
- /* BGQueue */
- clif->pBGQueueRegister = clif_parse_bgqueue_register;
- clif->pBGQueueCheckState = clif_parse_bgqueue_checkstate;
- clif->pBGQueueRevokeReq = clif_parse_bgqueue_revoke_req;
- clif->pBGQueueBattleBeginAck = clif_parse_bgqueue_battlebegin_ack;
/* */
clif->pPartyTick = clif_parse_PartyTick;
clif->pGuildInvite2 = clif_parse_GuildInvite2;
@@ -18568,6 +18585,4 @@ void clif_defaults(void) {
clif->pPartyBookingRefuseVolunteer = clif_parse_PartyBookingRefuseVolunteer;
clif->pPartyBookingCancelVolunteer = clif_parse_PartyBookingCancelVolunteer;
#endif
- /* dull */
- clif->pDull = clif_parse_dull;
}
diff --git a/src/map/clif.h b/src/map/clif.h
index a0946a48a..2cf193965 100644
--- a/src/map/clif.h
+++ b/src/map/clif.h
@@ -501,6 +501,7 @@ struct clif_interface {
void (*addcards2) (unsigned short *cards, struct item* item);
void (*item_sub) (unsigned char *buf, int n, struct item *i, struct item_data *id, int equip);
void (*getareachar_item) (struct map_session_data* sd,struct flooritem_data* fitem);
+ void (*cart_additem_ack) (struct map_session_data *sd, int flag);
void (*cashshop_load) (void);
void (*package_announce) (struct map_session_data *sd, unsigned short nameid, unsigned short containerid);
/* unit-related */
@@ -917,6 +918,9 @@ struct clif_interface {
void (*notify_time) (struct map_session_data* sd, unsigned long time);
void (*user_count) (struct map_session_data* sd, int count);
void (*noask_sub) (struct map_session_data *src, struct map_session_data *target, int type);
+ void (*bc_ready) (void);
+ int (*undisguise_timer) (int tid, unsigned int tick, int id, intptr_t data);
+ /* Hercules Channel System */
void (*chsys_create) (struct hChSysCh *channel, char *name, char *pass, unsigned char color);
void (*chsys_msg) (struct hChSysCh *channel, struct map_session_data *sd, char *msg);
void (*chsys_msg2) (struct hChSysCh *channel, char *msg);
@@ -929,8 +933,6 @@ struct clif_interface {
void (*chsys_quitg) (struct map_session_data *sd);
void (*chsys_gjoin) (struct guild *g1,struct guild *g2);
void (*chsys_gleave) (struct guild *g1,struct guild *g2);
- void (*bc_ready) (void);
- int (*undisguise_timer) (int tid, unsigned int tick, int id, intptr_t data);
/*------------------------
*- Parse Incoming Packet
*------------------------*/
diff --git a/src/map/guild.c b/src/map/guild.c
index 5ff0254dc..e5ea6809d 100644
--- a/src/map/guild.c
+++ b/src/map/guild.c
@@ -564,7 +564,7 @@ int guild_recv_info(struct guild *sg) {
//Also set the guild master flag.
sd->guild = g;
- sd->state.gmaster_flag = g;
+ sd->state.gmaster_flag = 1;
clif->charnameupdate(sd); // [LuzZza]
clif->guild_masterormember(sd);
}
@@ -754,7 +754,7 @@ void guild_member_joined(struct map_session_data *sd)
return;
}
if (strcmp(sd->status.name,g->master) == 0) { // set the Guild Master flag
- sd->state.gmaster_flag = g;
+ sd->state.gmaster_flag = 1;
// prevent Guild Skills from being used directly after relog
if( battle_config.guild_skill_relog_delay )
guild->block_skill(sd, 300000);
@@ -933,6 +933,10 @@ int guild_member_withdraw(int guild_id, int account_id, int char_id, int flag, c
if( g->instances )
instance->check_kick(sd);
clif->charnameupdate(sd); //Update display name [Skotlex]
+ status_change_end(&sd->bl, SC_LEADERSHIP, INVALID_TIMER);
+ status_change_end(&sd->bl, SC_GLORYWOUNDS, INVALID_TIMER);
+ status_change_end(&sd->bl, SC_SOULCOLD, INVALID_TIMER);
+ status_change_end(&sd->bl, SC_HAWKEYES, INVALID_TIMER);
//TODO: send emblem update to self and people around
}
return 0;
@@ -1756,8 +1760,13 @@ int guild_broken(int guild_id,int flag)
gstorage->pc_quit(sd,1);
sd->status.guild_id=0;
sd->guild = NULL;
+ sd->state.gmaster_flag = 0;
clif->guild_broken(g->member[i].sd,0);
clif->charnameupdate(sd); // [LuzZza]
+ status_change_end(&sd->bl, SC_LEADERSHIP, INVALID_TIMER);
+ status_change_end(&sd->bl, SC_GLORYWOUNDS, INVALID_TIMER);
+ status_change_end(&sd->bl, SC_SOULCOLD, INVALID_TIMER);
+ status_change_end(&sd->bl, SC_HAWKEYES, INVALID_TIMER);
}
}
@@ -1828,7 +1837,7 @@ int guild_gm_changed(int guild_id, int account_id, int char_id)
if (g->member[0].sd && g->member[0].sd->fd) {
clif->message(g->member[0].sd->fd, msg_txt(679)); //"You have become the Guild Master!"
- g->member[0].sd->state.gmaster_flag = g;
+ g->member[0].sd->state.gmaster_flag = 1;
//Block his skills for 5 minutes to prevent abuse.
guild->block_skill(g->member[0].sd, 300000);
}
@@ -1849,9 +1858,9 @@ int guild_gm_changed(int guild_id, int account_id, int char_id)
/*====================================================
* Guild disbanded
*---------------------------------------------------*/
-int guild_break(struct map_session_data *sd,char *name)
-{
+int guild_break(struct map_session_data *sd,char *name) {
struct guild *g;
+ struct unit_data *ud;
int i;
nullpo_ret(sd);
@@ -1872,7 +1881,30 @@ int guild_break(struct map_session_data *sd,char *name)
clif->guild_broken(sd,2);
return 0;
}
-
+
+ /* regardless of char server allowing it, we clear the guild master's auras */
+ if( (ud = unit_bl2ud(&sd->bl)) ) {
+ int count = 0;
+ struct skill_unit_group *groups[4];
+ for (i=0;i<MAX_SKILLUNITGROUP && ud->skillunit[i];i++) {
+ switch (ud->skillunit[i]->skill_id) {
+ case GD_LEADERSHIP:
+ case GD_GLORYWOUNDS:
+ case GD_SOULCOLD:
+ case GD_HAWKEYES:
+ if( count == 4 )
+ ShowWarning("guild_break:'%s' got more than 4 guild aura instances! (%d)\n",sd->status.name,ud->skillunit[i]->skill_id);
+ else
+ groups[count++] = ud->skillunit[i];
+ break;
+ }
+
+ }
+ for(i = 0; i < count; i++) {
+ skill->del_unitgroup(groups[i],ALC_MARK);
+ }
+ }
+
intif_guild_break(g->guild_id);
return 1;
}
diff --git a/src/map/homunculus.c b/src/map/homunculus.c
index 9bf752ef7..5a9d7ac28 100644
--- a/src/map/homunculus.c
+++ b/src/map/homunculus.c
@@ -1295,4 +1295,6 @@ void homunculus_defaults(void) {
homun->read_skill_db_sub = homunculus_read_skill_db_sub;
homun->skill_db_read = homunculus_skill_db_read;
homun->exp_db_read = homunculus_exp_db_read;
+ homun->addspiritball = homunculus_addspiritball;
+ homun->delspiritball = homunculus_delspiritball;
}
diff --git a/src/map/irc-bot.c b/src/map/irc-bot.c
index 0be8074c8..d3782bd9b 100644
--- a/src/map/irc-bot.c
+++ b/src/map/irc-bot.c
@@ -120,15 +120,12 @@ void irc_parse_source(char *source, char *nick, char *ident, char *host) {
for(i = 0; i < len; i++) {
if( stage == 0 && source[i] == '!' ) {
- memcpy(nick, &source[0], min(i,IRC_NICK_LENGTH));
- nick[i] = '\0';
+ safestrncpy(nick, &source[0], min(i + 1, IRC_NICK_LENGTH));
pos = i+1;
stage = 1;
} else if( stage == 1 && source[i] == '@' ) {
- memcpy(ident, &source[pos], min(i - pos,IRC_IDENT_LENGTH));
- ident[i-pos] = '\0';
- memcpy(host, &source[i+1], min(len - i,IRC_HOST_LENGTH));
- host[len] = '\0';
+ safestrncpy(ident, &source[pos], min(i - pos + 1, IRC_IDENT_LENGTH));
+ safestrncpy(host, &source[i+1], min(len - i, IRC_HOST_LENGTH));
break;
}
}
diff --git a/src/map/itemdb.c b/src/map/itemdb.c
index 036075e57..223c67a3a 100644
--- a/src/map/itemdb.c
+++ b/src/map/itemdb.c
@@ -1942,9 +1942,6 @@ static void itemdb_read(void) {
sv->readdb(iMap->db_path, DBPATH"item_buyingstore.txt", ',', 1, 1, -1, &itemdb_read_buyingstore);
sv->readdb(iMap->db_path, "item_nouse.txt", ',', 3, 3, -1, &itemdb_read_nouse);
-
- itemdb->name_constants();
-
itemdb_uid_load();
}
@@ -2111,6 +2108,16 @@ void itemdb_name_constants(void) {
dbi_destroy(iter);
}
+/* used to clear conflicts during script reload */
+void itemdb_force_name_constants(void) {
+ DBIterator *iter = db_iterator(itemdb->names);
+ struct item_data *data;
+
+ for( data = dbi_first(iter); dbi_exists(iter); data = dbi_next(iter) )
+ script->set_constant_force(data->name,data->nameid,0);
+
+ dbi_destroy(iter);
+}
void do_final_itemdb(void) {
int i;
@@ -2168,6 +2175,7 @@ void itemdb_defaults(void) {
itemdb->final = do_final_itemdb;
itemdb->reload = itemdb_reload;//incomplete
itemdb->name_constants = itemdb_name_constants;
+ itemdb->force_name_constants = itemdb_force_name_constants;
/* */
itemdb->groups = NULL;
itemdb->group_count = 0;
@@ -2187,13 +2195,13 @@ void itemdb_defaults(void) {
itemdb->write_cached_packages = itemdb_write_cached_packages;
itemdb->read_cached_packages = itemdb_read_cached_packages;
/* */
+ itemdb->name2id = itemdb_name2id;
itemdb->search_name = itemdb_searchname;
itemdb->search_name_array = itemdb_searchname_array;
itemdb->load = itemdb_load;
itemdb->search = itemdb_search;
itemdb->parse_dbrow = itemdb_parse_dbrow;
itemdb->exists = itemdb_exists;//incomplete
- itemdb->name2id = itemdb_name2id;
itemdb->in_group = itemdb_in_group;
itemdb->group_item = itemdb_searchrandomid;
itemdb->chain_item = itemdb_chain_item;
diff --git a/src/map/itemdb.h b/src/map/itemdb.h
index 93bb8e0b9..41f40895b 100644
--- a/src/map/itemdb.h
+++ b/src/map/itemdb.h
@@ -280,6 +280,7 @@ struct itemdb_interface {
void (*final) (void);
void (*reload) (void);
void (*name_constants) (void);
+ void (*force_name_constants) (void);
/* */
struct item_group *groups;
unsigned short group_count;
diff --git a/src/map/log.c b/src/map/log.c
index 79e3b87e6..daf96b930 100644
--- a/src/map/log.c
+++ b/src/map/log.c
@@ -513,8 +513,6 @@ void log_defaults(void) {
logs->atcommand = log_atcommand;
logs->branch = log_branch;
logs->mvpdrop = log_mvpdrop;
- logs->config_read = log_config_read;
- logs->config_done = log_config_complete;
/* will be modified in a few seconds once loading is complete. */
logs->pick_sub = log_pick_sub_txt;
@@ -525,4 +523,7 @@ void log_defaults(void) {
logs->branch_sub = log_branch_sub_txt;
logs->mvpdrop_sub = log_mvpdrop_sub_txt;
+ logs->config_read = log_config_read;
+ logs->config_done = log_config_complete;
+
}
diff --git a/src/map/mail.c b/src/map/mail.c
index 021a51cde..93304bac0 100644
--- a/src/map/mail.c
+++ b/src/map/mail.c
@@ -200,4 +200,4 @@ void mail_defaults(void)
mail->openmail = mail_openmail;
mail->deliveryfail = mail_deliveryfail;
mail->invalid_operation = mail_invalid_operation;
-} \ No newline at end of file
+}
diff --git a/src/map/map.c b/src/map/map.c
index 05ba2edc2..db3bcf001 100644
--- a/src/map/map.c
+++ b/src/map/map.c
@@ -5583,6 +5583,23 @@ void map_defaults(void) {
iMap->charid2nick = map_charid2nick;
iMap->charid2sd = map_charid2sd;
+ iMap->map_foreachpc = map_map_foreachpc;
+ iMap->map_foreachmob = map_map_foreachmob;
+ iMap->map_foreachnpc = map_map_foreachnpc;
+ iMap->map_foreachregen = map_map_foreachregen;
+ iMap->map_foreachiddb = map_map_foreachiddb;
+
+ iMap->foreachinrange = map_foreachinrange;
+ iMap->foreachinshootrange = map_foreachinshootrange;
+ iMap->foreachinarea = map_foreachinarea;
+ iMap->forcountinrange = map_forcountinrange;
+ iMap->forcountinarea = map_forcountinarea;
+ iMap->foreachinmovearea = map_foreachinmovearea;
+ iMap->foreachincell = map_foreachincell;
+ iMap->foreachinpath = map_foreachinpath;
+ iMap->foreachinmap = map_foreachinmap;
+ iMap->foreachininstance = map_foreachininstance;
+
iMap->id2sd = map_id2sd;
iMap->id2md = map_id2md;
iMap->id2nd = map_id2nd;
@@ -5628,23 +5645,6 @@ void map_defaults(void) {
iMap->do_shutdown = do_shutdown;
- iMap->map_foreachpc = map_map_foreachpc;
- iMap->map_foreachmob = map_map_foreachmob;
- iMap->map_foreachnpc = map_map_foreachnpc;
- iMap->map_foreachregen = map_map_foreachregen;
- iMap->map_foreachiddb = map_map_foreachiddb;
-
- iMap->foreachinrange = map_foreachinrange;
- iMap->foreachinshootrange = map_foreachinshootrange;
- iMap->foreachinarea=map_foreachinarea;
- iMap->forcountinrange=map_forcountinrange;
- iMap->forcountinarea=map_forcountinarea;
- iMap->foreachinmovearea = map_foreachinmovearea;
- iMap->foreachincell=map_foreachincell;
- iMap->foreachinpath=map_foreachinpath;
- iMap->foreachinmap=map_foreachinmap;
- iMap->foreachininstance=map_foreachininstance;
-
/* temporary until the map.c "Hercules Renewal Phase One" design is complete. [Ind] */
mapit = &mapit_s;
diff --git a/src/map/map.h b/src/map/map.h
index ec5921509..7826e00b3 100644
--- a/src/map/map.h
+++ b/src/map/map.h
@@ -902,7 +902,7 @@ struct map_interface {
int (*addmobtolist) (unsigned short m, struct spawn_data *spawn); // [Wizputer]
void (*spawnmobs) (int16 m); // [Wizputer]
void (*removemobs) (int16 m); // [Wizputer]
- void (*do_reconnect_map) (void); //Invoked on map-char reconnection [Skotlex] Note used but still keeping it, just in case
+ //void (*do_reconnect_map) (void); //Invoked on map-char reconnection [Skotlex] Note used but still keeping it, just in case
void (*addmap2db) (struct map_data *m);
void (*removemapdb) (struct map_data *m);
void (*clean) (int i);
diff --git a/src/map/npc.c b/src/map/npc.c
index 97f84d73d..6aa19198f 100644
--- a/src/map/npc.c
+++ b/src/map/npc.c
@@ -74,6 +74,7 @@ int npc_get_new_npc_id(void) {
}
static DBMap* ev_db; // const char* event_name -> struct event_data*
+static DBMap* ev_label_db; // const char* label_name (without leading "::") -> struct linkdb_node** (key: struct npc_data*; data: struct event_data*)
static DBMap* npcname_db; // const char* npc_name -> struct npc_data*
struct event_data {
@@ -313,6 +314,17 @@ int npc_event_dequeue(struct map_session_data* sd)
return 1;
}
+/**
+ * @see DBCreateData
+ */
+static DBData npc_event_export_create(DBKey key, va_list args)
+{
+ struct linkdb_node** head_ptr;
+ CREATE(head_ptr, struct linkdb_node*, 1);
+ *head_ptr = NULL;
+ return DB->ptr2data(head_ptr);
+}
+
/*==========================================
* exports a npc event label
* called from npc_parse_script
@@ -323,14 +335,18 @@ static int npc_event_export(struct npc_data *nd, int i)
int pos = nd->u.scr.label_list[i].pos;
if ((lname[0] == 'O' || lname[0] == 'o') && (lname[1] == 'N' || lname[1] == 'n')) {
struct event_data *ev;
+ struct linkdb_node **label_linkdb = NULL;
char buf[EVENT_NAME_LENGTH];
snprintf(buf, ARRAYLENGTH(buf), "%s::%s", nd->exname, lname);
+ if (strdb_exists(ev_db, buf)) // There was already another event of the same name?
+ return 1;
// generate the data and insert it
CREATE(ev, struct event_data, 1);
ev->nd = nd;
ev->pos = pos;
- if (strdb_put(ev_db, buf, ev)) // There was already another event of the same name?
- return 1;
+ strdb_put(ev_db, buf, ev);
+ label_linkdb = strdb_ensure(ev_label_db, lname, npc_event_export_create);
+ linkdb_insert(label_linkdb, nd, ev);
}
return 0;
}
@@ -340,66 +356,58 @@ int npc_event_sub(struct map_session_data* sd, struct event_data* ev, const char
/**
* Exec name (NPC events) on player or global
* Do on all NPC when called with foreach
- * @see DBApply
*/
-int npc_event_doall_sub(DBKey key, DBData *data, va_list ap)
+void npc_event_doall_sub(void *key, void *data, va_list ap)
{
- const char* p = key.str;
- struct event_data* ev;
+ struct event_data* ev = data;
int* c;
const char* name;
int rid;
- nullpo_ret(ev = DB->data2ptr(data));
- nullpo_ret(c = va_arg(ap, int *));
- nullpo_ret(name = va_arg(ap, const char *));
+ nullpo_retv(c = va_arg(ap, int*));
+ nullpo_retv(name = va_arg(ap, const char*));
rid = va_arg(ap, int);
- p = strchr(p, ':'); // match only the event name
- if( p && strcmpi(name, p) == 0 /* && !ev->nd->src_id */ ) // Do not run on duplicates. [Paradox924X]
+ if (ev /* && !ev->nd->src_id */) // Do not run on duplicates. [Paradox924X]
{
- if(rid) // a player may only have 1 script running at the same time
- npc_event_sub(iMap->id2sd(rid),ev,key.str);
- else
- run_script(ev->nd->u.scr.script,ev->pos,rid,ev->nd->bl.id);
+ if(rid) { // a player may only have 1 script running at the same time
+ char buf[EVENT_NAME_LENGTH];
+ snprintf(buf, ARRAYLENGTH(buf), "%s::%s", ev->nd->exname, name);
+ npc_event_sub(iMap->id2sd(rid), ev, buf);
+ }
+ else {
+ run_script(ev->nd->u.scr.script, ev->pos, rid, ev->nd->bl.id);
+ }
(*c)++;
}
-
- return 0;
}
-/**
- * @see DBApply
- */
-static int npc_event_do_sub(DBKey key, DBData *data, va_list ap)
+// runs the specified event (supports both single-npc and global events)
+int npc_event_do(const char* name)
{
- const char* p = key.str;
- struct event_data* ev;
- int* c;
- const char* name;
-
- nullpo_ret(ev = DB->data2ptr(data));
- nullpo_ret(c = va_arg(ap, int *));
- nullpo_ret(name = va_arg(ap, const char *));
-
- if( p && strcmpi(name, p) == 0 ) {
- run_script(ev->nd->u.scr.script,ev->pos,0,ev->nd->bl.id);
- (*c)++;
+ if( name[0] == ':' && name[1] == ':' ) {
+ return npc_event_doall(name+2); // skip leading "::"
+ }
+ else {
+ struct event_data *ev = strdb_get(ev_db, name);
+ if (ev) {
+ run_script(ev->nd->u.scr.script, ev->pos, 0, ev->nd->bl.id);
+ return 1;
+ }
}
-
return 0;
}
-// runs the specified event (supports both single-npc and global events)
-int npc_event_do(const char* name)
+// runs the specified event, with a RID attached (global only)
+int npc_event_doall_id(const char* name, int rid)
{
int c = 0;
+ struct linkdb_node **label_linkdb = strdb_get(ev_label_db, name);
- if( name[0] == ':' && name[1] == ':' )
- ev_db->foreach(ev_db,npc_event_doall_sub,&c,name,0);
- else
- ev_db->foreach(ev_db,npc_event_do_sub,&c,name);
+ if (label_linkdb == NULL)
+ return 0;
+ linkdb_foreach(label_linkdb, npc_event_doall_sub, &c, name, rid);
return c;
}
@@ -409,16 +417,6 @@ int npc_event_doall(const char* name)
return npc_event_doall_id(name, 0);
}
-// runs the specified event, with a RID attached (global only)
-int npc_event_doall_id(const char* name, int rid)
-{
- int c = 0;
- char buf[64];
- safesnprintf(buf, sizeof(buf), "::%s", name);
- ev_db->foreach(ev_db,npc_event_doall_sub,&c,buf,rid);
- return c;
-}
-
/*==========================================
* Clock event execution
* OnMinute/OnClock/OnHour/OnDay/OnDDHHMM
@@ -799,7 +797,7 @@ int npc_event_sub(struct map_session_data* sd, struct event_data* ev, const char
ARR_FIND( 0, MAX_EVENTQUEUE, i, sd->eventqueue[i][0] == '\0' );
if( i < MAX_EVENTQUEUE )
{
- safestrncpy(sd->eventqueue[i],eventname,50); //Event enqueued.
+ safestrncpy(sd->eventqueue[i],eventname,EVENT_NAME_LENGTH); //Event enqueued.
return 0;
}
@@ -1778,6 +1776,19 @@ static int npc_unload_ev(DBKey key, DBData *data, va_list ap)
return 0;
}
+/**
+ * @see DBApply
+ */
+static int npc_unload_ev_label(DBKey key, DBData *data, va_list ap)
+{
+ struct linkdb_node **label_linkdb = DB->data2ptr(data);
+ struct npc_data* nd = va_arg(ap, struct npc_data *);
+
+ linkdb_erase(label_linkdb, nd);
+
+ return 0;
+}
+
//Chk if npc matches src_id, then unload.
//Sub-function used to find duplicates.
static int npc_unload_dup_sub(struct npc_data* nd, va_list args)
@@ -1831,8 +1842,10 @@ int npc_unload(struct npc_data* nd, bool single) {
struct s_mapiterator* iter;
struct block_list* bl;
- if( single )
+ if( single ) {
ev_db->foreach(ev_db,npc_unload_ev,nd->exname); //Clean up all events related
+ ev_label_db->foreach(ev_label_db,npc_unload_ev_label,nd);
+ }
iter = mapit_geteachpc();
for( bl = (struct block_list*)mapit->first(iter); mapit->exists(iter); bl = (struct block_list*)mapit->next(iter) ) {
@@ -3732,17 +3745,25 @@ void npc_read_event_script(void)
}
}
-void npc_clear_pathlist(void) {
- struct npc_path_data *npd = NULL;
- DBIterator *path_list = db_iterator(npc_path_db);
-
- /* free all npc_path_data filepaths */
- for( npd = dbi_first(path_list); dbi_exists(path_list); npd = dbi_next(path_list) ) {
- if( npd->path )
- aFree(npd->path);
- }
+/**
+ * @see DBApply
+ */
+static int npc_path_db_clear_sub(DBKey key, DBData *data, va_list args)
+{
+ struct npc_path_data *npd = DB->data2ptr(data);
+ if (npd->path)
+ aFree(npd->path);
+ return 0;
+}
- dbi_destroy(path_list);
+/**
+ * @see DBApply
+ */
+static int ev_label_db_clear_sub(DBKey key, DBData *data, va_list args)
+{
+ struct linkdb_node **label_linkdb = DB->data2ptr(data);
+ linkdb_final(label_linkdb); // linked data (struct event_data*) is freed when clearing ev_db
+ return 0;
}
//Clear then reload npcs files
@@ -3756,12 +3777,11 @@ int npc_reload(void) {
/* clear guild flag cache */
guild->flags_clear();
- npc_clear_pathlist();
-
- db_clear(npc_path_db);
+ npc_path_db->clear(npc_path_db, npc_path_db_clear_sub);
db_clear(npcname_db);
db_clear(ev_db);
+ ev_label_db->clear(ev_label_db, ev_label_db_clear_sub);
npc_last_npd = NULL;
npc_last_path = NULL;
@@ -3824,7 +3844,9 @@ int npc_reload(void) {
"\t-'"CL_WHITE"%d"CL_RESET"' Mobs Cached\n"
"\t-'"CL_WHITE"%d"CL_RESET"' Mobs Not Cached\n",
npc_id - npc_new_min, npc_warp, npc_shop, npc_script, npc_mob, npc_cache_mob, npc_delay_mob);
-
+
+ itemdb->name_constants();
+
for(i = 0; i < instance->instances; i++) {
instance->destroy(i);
}
@@ -3876,16 +3898,17 @@ bool npc_unloadfile( const char* path ) {
void do_clear_npc(void) {
db_clear(npcname_db);
db_clear(ev_db);
+ ev_label_db->clear(ev_label_db, ev_label_db_clear_sub);
}
/*==========================================
* Destructor
*------------------------------------------*/
int do_final_npc(void) {
- npc_clear_pathlist();
- ev_db->destroy(ev_db, NULL);
- npcname_db->destroy(npcname_db, NULL);
- npc_path_db->destroy(npc_path_db, NULL);
+ db_destroy(ev_db);
+ ev_label_db->destroy(ev_label_db, ev_label_db_clear_sub);
+ db_destroy(npcname_db);
+ npc_path_db->destroy(npc_path_db, npc_path_db_clear_sub);
ers_destroy(timer_event_ers);
npc_clearsrcfile();
@@ -3952,9 +3975,10 @@ int do_init_npc(void)
for( i = MAX_NPC_CLASS2_START; i < MAX_NPC_CLASS2_END; i++ )
npc_viewdb2[i - MAX_NPC_CLASS2_START].class_ = i;
- ev_db = strdb_alloc((DBOptions)(DB_OPT_DUP_KEY|DB_OPT_RELEASE_DATA),2*NAME_LENGTH+2+1);
- npcname_db = strdb_alloc(DB_OPT_BASE,NAME_LENGTH);
- npc_path_db = strdb_alloc(DB_OPT_BASE|DB_OPT_DUP_KEY|DB_OPT_RELEASE_DATA,0);
+ ev_db = stridb_alloc(DB_OPT_DUP_KEY|DB_OPT_RELEASE_DATA, EVENT_NAME_LENGTH);
+ ev_label_db = stridb_alloc(DB_OPT_DUP_KEY|DB_OPT_RELEASE_DATA, NAME_LENGTH);
+ npcname_db = strdb_alloc(DB_OPT_BASE, NAME_LENGTH);
+ npc_path_db = strdb_alloc(DB_OPT_DUP_KEY|DB_OPT_RELEASE_DATA, 0);
timer_event_ers = ers_new(sizeof(struct timer_event_data),"clif.c::timer_event_ers",ERS_OPT_NONE);
@@ -3977,6 +4001,8 @@ int do_init_npc(void)
"\t-'"CL_WHITE"%d"CL_RESET"' Mobs Not Cached\n",
npc_id - START_NPC_NUM, npc_warp, npc_shop, npc_script, npc_mob, npc_cache_mob, npc_delay_mob);
+ itemdb->name_constants();
+
iMap->zone_init();
npc->motd = npc_name2id("HerculesMOTD"); /* [Ind/Hercules] */
diff --git a/src/map/npc.h b/src/map/npc.h
index 16e6fe74c..48c27b297 100644
--- a/src/map/npc.h
+++ b/src/map/npc.h
@@ -99,7 +99,7 @@ enum actor_classes
//Checks if a given id is a valid npc id. [Skotlex]
//Since new npcs are added all the time, the max valid value is the one before the first mob (Scorpion = 1001)
-#define npcdb_checkid(id) ( ( (id) >= 46 && (id) <= 125) || (id) == HIDDEN_WARP_CLASS || ( (id) > 400 && (id) < MAX_NPC_CLASS ) || (id) == INVISIBLE_CLASS || ( (id) > 10000 && (id) < 10049 ) )
+#define npcdb_checkid(id) ( ( (id) >= 46 && (id) <= 125) || (id) == HIDDEN_WARP_CLASS || ( (id) > 400 && (id) < MAX_NPC_CLASS ) || (id) == INVISIBLE_CLASS || ( (id) > MAX_NPC_CLASS2_START && (id) < MAX_NPC_CLASS2_END ) )
#ifdef PCRE_SUPPORT
void npc_chat_finalize(struct npc_data* nd);
diff --git a/src/map/packets.h b/src/map/packets.h
index f90c3b29d..091c48a77 100644
--- a/src/map/packets.h
+++ b/src/map/packets.h
@@ -2272,6 +2272,102 @@ packet(0x020d,-1);
packet(0x0883,36,clif->pStoragePassword,0);
#endif
+//2013-06-12Ragexe (Shakto)
+#if PACKETVER >= 20130612
+ packet(0x087E,5,clif->pChangeDir,2,4);
+ packet(0x0919,19,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0940,26,clif->pFriendsListAdd,2);
+ packet(0x093A,5,clif->pHomMenu,2,4);
+ packet(0x0964,36,clif->pStoragePassword,0);
+#endif
+
+//2013-06-18Ragexe (Shakto)
+#if PACKETVER >= 20130618
+ packet(0x0889,7,clif->pActionRequest,2,6);
+ packet(0x0951,10,clif->pUseSkillToId,2,4,6);
+ packet(0x088E,5,clif->pWalkToXY,2);
+ packet(0x0930,6,clif->pTickSend,2);
+ packet(0x08A6,5,clif->pChangeDir,2,4);
+ packet(0x0962,6,clif->pTakeItem,2);
+ packet(0x0917,6,clif->pDropItem,2,4);
+ packet(0x0885,8,clif->pMoveToKafra,2,4);
+ packet(0x0936,8,clif->pMoveFromKafra,2,4);
+ packet(0x096A,10,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094F,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0944,6,clif->pGetCharNameRequest,2);
+ packet(0x0945,6,clif->pSolveCharName,2);
+ packet(0x0890,12,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0363,2,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0281,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0891,-1,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0862,6,clif->pReqClickBuyingStore,2);
+ packet(0x085A,2,clif->pReqCloseBuyingStore,0);
+ packet(0x0932,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08A7,41,clif->pPartyBookingRegisterReq,2,4);
+ // packet(0x087A,8); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0942,-1,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095B,19,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0887,26,clif->pPartyInvite2,2);
+ // packet(0x0878,4); // CZ_GANGSI_RANK
+ packet(0x0953,26,clif->pFriendsListAdd,2);
+ packet(0x02C4,5,clif->pHomMenu,2,4);
+ packet(0x0864,36,clif->pStoragePassword,0);
+#endif
+
+//2013-06-26Ragexe (Shakto)
+#if PACKETVER >= 20130626
+ packet(0x0369,7,clif->pActionRequest,2,6);
+ packet(0x083C,10,clif->pUseSkillToId,2,4,6);
+ packet(0x0437,5,clif->pWalkToXY,2);
+ packet(0x035F,6,clif->pTickSend,2);
+ packet(0x094D,5,clif->pChangeDir,2,4);
+ packet(0x088B,6,clif->pTakeItem,2);
+ packet(0x0952,6,clif->pDropItem,2,4);
+ packet(0x0921,8,clif->pMoveToKafra,2,4);
+ packet(0x0817,8,clif->pMoveFromKafra,2,4);
+ packet(0x0438,10,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0366,90,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x096A,6,clif->pGetCharNameRequest,2);
+ packet(0x0368,6,clif->pSolveCharName,2);
+ packet(0x0838,12,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0835,2,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0819,-1,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0811,-1,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0360,6,clif->pReqClickBuyingStore,2);
+ packet(0x0365,2,clif->pReqCloseBuyingStore,0);
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0894,41,clif->pPartyBookingRegisterReq,2,4);
+ // packet(0x0860,8); // CZ_JOIN_BATTLE_FIELD
+ packet(0x08A5,-1,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088C,19,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0895,26,clif->pPartyInvite2,2);
+ // packet(0x088F,4); // CZ_GANGSI_RANK
+ packet(0x08AB,26,clif->pFriendsListAdd,2);
+ packet(0x0960,5,clif->pHomMenu,2,4);
+ packet(0x0930,36,clif->pStoragePassword,0);
+#endif
+
+//2013-07-03Ragexe (Shakto)
+#if PACKETVER >= 20130703
+ packet(0x0930,5,clif->pChangeDir,2,4);
+ packet(0x07E4,6,clif->pTakeItem,2);
+ packet(0x0362,6,clif->pDropItem,2,4);
+ packet(0x07EC,8,clif->pMoveToKafra,2,4);
+ packet(0x0364,8,clif->pMoveFromKafra,2,4);
+ packet(0x0202,6,clif->pReqClickBuyingStore,2);
+ packet(0x0817,2,clif->pReqCloseBuyingStore,0);
+ packet(0x0815,-1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0365,41,clif->pPartyBookingRegisterReq,2,4);
+ // packet(0x0363,8); // CZ_JOIN_BATTLE_FIELD
+ packet(0x0281,-1,clif->pItemListWindowSelected,2,4,8);
+ packet(0x022D,19,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0802,26,clif->pPartyInvite2,2);
+ // packet(0x0436,4); // CZ_GANGSI_RANK
+ packet(0x0360,26,clif->pFriendsListAdd,2);
+ packet(0x094A,5,clif->pHomMenu,2,4);
+ packet(0x0873,36,clif->pStoragePassword,0);
+#endif
+
/* PacketKeys: http://hercules.ws/board/topic/1105-hercules-wpe-free-june-14th-patch/ */
#if PACKETVER >= 20110817
packetKeys(0x053D5CED,0x3DED6DED,0x6DED6DED); /* Thanks to Shakto */
@@ -2453,5 +2549,13 @@ packet(0x020d,-1);
packetKeys(0x434115DE,0x34A10FE9,0x6791428E); /* Thanks to Shakto */
#endif
+#if PACKETVER >= 20130626
+ packetKeys(0x38F453EF,0x6A040FD8,0X65BD6668); /* Thanks to Shakto */
+#endif
+
+#if PACKETVER >= 20130703
+ packetKeys(0x4FF90E23,0x0F1432F2,0x4CFA1EDA); /* Thanks to Shakto */
+#endif
+
#endif /* _PACKETS_H_ */
diff --git a/src/map/packets_struct.h b/src/map/packets_struct.h
index f6e6a8a3f..d56e9ce01 100644
--- a/src/map/packets_struct.h
+++ b/src/map/packets_struct.h
@@ -18,6 +18,7 @@ struct EQUIPSLOTINFO {
*
**/
enum packet_headers {
+ cart_additem_ackType = 0x12c,
sc_notickType = 0x196,
#if PACKETVER < 20061218
additemType = 0xa0,
@@ -459,6 +460,7 @@ struct packet_script_clear {
short PacketType;
unsigned int NpcID;
} __attribute__((packed));
+
/* made possible thanks to Yommy!! */
struct packet_package_item_announce {
short PacketType;
@@ -471,6 +473,11 @@ struct packet_package_item_announce {
unsigned short BoxItemID;
} __attribute__((packed));
+struct packet_cart_additem_ack {
+ short PacketType;
+ char result;
+} __attribute__((packed));
+
#pragma pack(pop)
#endif /* _PACKETS_STRUCT_H_ */
diff --git a/src/map/pc.c b/src/map/pc.c
index 28d74cfd1..5a8b77cd3 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -4431,7 +4431,7 @@ int pc_cart_additem(struct map_session_data *sd,struct item *item_data,int amoun
if( !itemdb_cancartstore(item_data, pc->get_group_level(sd)) )
{ // Check item trade restrictions [Skotlex]
clif->message (sd->fd, msg_txt(264));
- return 1;
+ return 1;/* TODO: there is no official response to this? */
}
if( (w = data->weight*amount) + sd->cart_weight > sd->cart_weight_max )
@@ -4449,7 +4449,7 @@ int pc_cart_additem(struct map_session_data *sd,struct item *item_data,int amoun
if( i < MAX_CART )
{// item already in cart, stack it
if( amount > MAX_AMOUNT - sd->status.cart[i].amount || ( data->stack.cart && amount > data->stack.amount - sd->status.cart[i].amount ) )
- return 1; // no room
+ return 2; // no room
sd->status.cart[i].amount+=amount;
clif->cart_additem(sd,i,amount,0);
@@ -4458,7 +4458,7 @@ int pc_cart_additem(struct map_session_data *sd,struct item *item_data,int amoun
{// item not stackable or not present, add it
ARR_FIND( 0, MAX_CART, i, sd->status.cart[i].nameid == 0 );
if( i == MAX_CART )
- return 1; // no room
+ return 2; // no room
memcpy(&sd->status.cart[i],item_data,sizeof(sd->status.cart[0]));
sd->status.cart[i].amount=amount;
@@ -4512,6 +4512,7 @@ int pc_cart_delitem(struct map_session_data *sd,int n,int amount,int type,e_log_
int pc_putitemtocart(struct map_session_data *sd,int idx,int amount)
{
struct item *item_data;
+ int flag;
nullpo_ret(sd);
@@ -4523,10 +4524,10 @@ int pc_putitemtocart(struct map_session_data *sd,int idx,int amount)
if( item_data->nameid == 0 || amount < 1 || item_data->amount < amount || sd->state.vending )
return 1;
- if( pc->cart_additem(sd,item_data,amount,LOG_TYPE_NONE) == 0 )
+ if( (flag = pc->cart_additem(sd,item_data,amount,LOG_TYPE_NONE)) == 0 )
return pc->delitem(sd,idx,amount,0,5,LOG_TYPE_NONE);
- return 1;
+ return flag;
}
/*==========================================
@@ -4568,11 +4569,11 @@ int pc_getitemfromcart(struct map_session_data *sd,int idx,int amount)
if(item_data->nameid==0 || amount < 1 || item_data->amount<amount || sd->state.vending )
return 1;
+
if((flag = pc->additem(sd,item_data,amount,LOG_TYPE_NONE)) == 0)
return pc->cart_delitem(sd,idx,amount,0,LOG_TYPE_NONE);
- clif->additem(sd,0,0,flag);
- return 1;
+ return flag;
}
/*==========================================
@@ -6986,10 +6987,10 @@ void pc_revive(struct map_session_data *sd,unsigned int hp, unsigned int sp) {
pc->setinvincibletimer(sd, battle_config.pc_invincible_time);
if( sd->state.gmaster_flag ) {
- guild->aura_refresh(sd,GD_LEADERSHIP,guild->checkskill(sd->state.gmaster_flag,GD_LEADERSHIP));
- guild->aura_refresh(sd,GD_GLORYWOUNDS,guild->checkskill(sd->state.gmaster_flag,GD_GLORYWOUNDS));
- guild->aura_refresh(sd,GD_SOULCOLD,guild->checkskill(sd->state.gmaster_flag,GD_SOULCOLD));
- guild->aura_refresh(sd,GD_HAWKEYES,guild->checkskill(sd->state.gmaster_flag,GD_HAWKEYES));
+ guild->aura_refresh(sd,GD_LEADERSHIP,guild->checkskill(sd->guild,GD_LEADERSHIP));
+ guild->aura_refresh(sd,GD_GLORYWOUNDS,guild->checkskill(sd->guild,GD_GLORYWOUNDS));
+ guild->aura_refresh(sd,GD_SOULCOLD,guild->checkskill(sd->guild,GD_SOULCOLD));
+ guild->aura_refresh(sd,GD_HAWKEYES,guild->checkskill(sd->guild,GD_HAWKEYES));
}
}
// script
@@ -8932,12 +8933,12 @@ int pc_checkitem(struct map_session_data *sd)
}
if (sd->state.gmaster_flag) {
- struct guild_storage *guild_storage = gstorage->id2storage2(sd->state.gmaster_flag->guild_id);
+ struct guild_storage *guild_storage = gstorage->id2storage2(sd->guild->guild_id);
if (guild_storage) {
for( i = 0; i < MAX_GUILD_STORAGE; i++ ) {
id = guild_storage->items[i].nameid;
if( id && !itemdb_available(id) ) {
- ShowWarning("Removed invalid/disabled item id %d from guild storage (amount=%d, char_id=%d, guild_id=%d).\n", id, guild_storage->items[i].amount, sd->status.char_id, sd->state.gmaster_flag->guild_id);
+ ShowWarning("Removed invalid/disabled item id %d from guild storage (amount=%d, char_id=%d, guild_id=%d).\n", id, guild_storage->items[i].amount, sd->status.char_id, sd->guild->guild_id);
gstorage->delitem(sd, guild_storage, i, guild_storage->items[i].amount);
gstorage->close(sd); // force closing
}
diff --git a/src/map/pc.h b/src/map/pc.h
index 58dd85083..a69c77efe 100644
--- a/src/map/pc.h
+++ b/src/map/pc.h
@@ -158,7 +158,7 @@ struct map_session_data {
unsigned short autolootid[AUTOLOOTITEM_SIZE]; // [Zephyrus]
unsigned int autolooting : 1; //performance-saver, autolooting state for @alootid
unsigned short autobonus; //flag to indicate if an autobonus is activated. [Inkfish]
- struct guild *gmaster_flag;
+ unsigned int gmaster_flag : 1;
unsigned int prevend : 1;//used to flag wheather you've spent 40sp to open the vending or not.
unsigned int warping : 1;//states whether you're in the middle of a warp processing
unsigned int permanent_speed : 1; // When 1, speed cannot be changed through status_calc_pc().
@@ -752,7 +752,7 @@ struct pc_interface {
int (*class2idx) (int class_);
int (*get_group_level) (struct map_session_data *sd);
- int (*getrefinebonus) (int lv,int type);
+ //int (*getrefinebonus) (int lv,int type); FIXME: This function does not exist, nor it is ever called
bool (*can_give_items) (struct map_session_data *sd);
bool (*can_use_command) (struct map_session_data *sd, const char *command);
diff --git a/src/map/script.c b/src/map/script.c
index 3cb31b726..02fbf00ed 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -1964,10 +1964,15 @@ void script_set_constant(const char* name, int value, bool isparameter) {
ShowError("script_set_constant: Invalid name for %s '%s' (already defined as %s).\n", isparameter ? "parameter" : "constant", name, script_op2name(script->str_data[n].type));
}
}
-/* will override if necessary */
+/* adds data to a existent constant in the database, inserted normally via parse */
void script_set_constant2(const char *name, int value, bool isparameter) {
int n = add_str(name);
-
+
+ if( ( script->str_data[n].type == C_NAME || script->str_data[n].type == C_PARAM ) && ( script->str_data[n].val != 0 || script->str_data[n].backpatch != -1 ) ) { // existing parameter or constant
+ ShowNotice("Conflicting item/script var '%s', prioritising the script var\n",name);
+ return;
+ }
+
if( script->str_data[n].type != C_NOP ) {
script->str_data[n].func = NULL;
script->str_data[n].backpatch = -1;
@@ -1976,6 +1981,22 @@ void script_set_constant2(const char *name, int value, bool isparameter) {
script->str_data[n].type = isparameter ? C_PARAM : C_INT;
script->str_data[n].val = value;
+
+}
+/* same as constant2 except it will override if necessary, used to clear conflicts during reload */
+void script_set_constant_force(const char *name, int value, bool isparameter) {
+ int n = add_str(name);
+
+ if( script->str_data[n].type == C_PARAM )
+ return;/* the one type we don't mess with, reload doesn't affect it. */
+
+ if( script->str_data[n].type != C_NOP ) {
+ script->str_data[n].type = C_NOP;
+ script->str_data[n].val = 0;
+ script->str_data[n].func = NULL;
+ script->str_data[n].backpatch = -1;
+ script->str_data[n].label = -1;
+ }
}
/*==========================================
* Reading constant databases
@@ -3869,6 +3890,9 @@ int script_reload() {
db_clear(script->st_db);
mapreg_reload();
+
+ itemdb->force_name_constants();
+
return 0;
}
@@ -10486,13 +10510,10 @@ BUILDIN(removemapflag)
{
int16 m,i;
const char *str;
- //int val=0;//warning: variable ‘val’ set but not used" - deprecated?
str=script_getstr(st,2);
i=script_getnum(st,3);
- //if(script_hasdata(st,4)){
- // val=script_getnum(st,4);
- //}
+
m = iMap->mapname2mapid(str);
if(m >= 0) {
switch(i) {
@@ -17768,7 +17789,7 @@ void script_parse_builtin(void) {
BUILDIN_DEF(setmapflagnosave,"ssii"),
BUILDIN_DEF(getmapflag,"si"),
BUILDIN_DEF(setmapflag,"si?"),
- BUILDIN_DEF(removemapflag,"si?"),
+ BUILDIN_DEF(removemapflag,"si"),
BUILDIN_DEF(pvpon,"s"),
BUILDIN_DEF(pvpoff,"s"),
BUILDIN_DEF(gvgon,"s"),
@@ -18142,8 +18163,8 @@ void script_defaults(void) {
script->hqs = script->hqis = 0;
memset(&script->hqe, 0, sizeof(script->hqe));
- script->buildin_count = 0;
script->buildin = NULL;
+ script->buildin_count = 0;
script->str_data = NULL;
script->str_data_size = 0;
@@ -18178,7 +18199,9 @@ void script_defaults(void) {
script->pop_stack = pop_stack;
script->set_constant = script_set_constant;
script->set_constant2 = script_set_constant2;
+ script->set_constant_force = script_set_constant_force;
script->get_constant = script_get_constant;
+ script->label_add = script_label_add;
script->queue = script_hqueue_get;
script->queue_add = script_hqueue_add;
@@ -18186,6 +18209,4 @@ void script_defaults(void) {
script->queue_remove = script_hqueue_remove;
script->queue_create = script_hqueue_create;
script->queue_clear = script_hqueue_clear;
-
- script->label_add = script_label_add;
}
diff --git a/src/map/script.h b/src/map/script.h
index 25a891897..8e2c4a6f5 100644
--- a/src/map/script.h
+++ b/src/map/script.h
@@ -384,6 +384,7 @@ struct script_interface {
void (*pop_stack) (struct script_state* st, int start, int end);
void (*set_constant) (const char* name, int value, bool isparameter);
void (*set_constant2) (const char *name, int value, bool isparameter);
+ void (*set_constant_force) (const char *name, int value, bool isparameter);
bool (*get_constant) (const char* name, int* value);
void (*label_add)(int key, int pos);
/* */
diff --git a/src/map/skill.c b/src/map/skill.c
index 1b350f74c..f27a42ac9 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -2954,24 +2954,6 @@ int skill_check_unit_range2 (struct block_list *bl, int x, int y, uint16 skill_i
type, skill_id);
}
-int skill_guildaura_sub (struct map_session_data* sd, int id, int strvit, int agidex)
-{
- if(id == sd->bl.id && battle_config.guild_aura&16)
- return 0; // Do not affect guild leader
-
- if (sd->sc.data[SC_GUILDAURA]) {
- struct status_change_entry *sce = sd->sc.data[SC_GUILDAURA];
- if( sce->val3 != strvit || sce->val4 != agidex ) {
- sce->val3 = strvit;
- sce->val4 = agidex;
- status_calc_bl(&sd->bl, iStatus->sc2scb_flag(SC_GUILDAURA));
- }
- return 0;
- }
- sc_start4(&sd->bl, SC_GUILDAURA,100, 1, id, strvit, agidex, 1000);
- return 1;
-}
-
/*==========================================
* Checks that you have the requirements for casting a skill for homunculus/mercenary.
* Flag:
@@ -7521,7 +7503,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
int j = 0;
struct guild *g;
// i don't know if it actually summons in a circle, but oh well. ;P
- g = sd?sd->state.gmaster_flag:guild->search(iStatus->get_guild_id(src));
+ g = sd ? sd->guild : guild->search(iStatus->get_guild_id(src));
if (!g)
break;
clif->skill_nodamage(src,bl,skill_id,skill_lv,1);
@@ -18140,6 +18122,7 @@ void skill_defaults(void) {
skill->get_mhp = skill_get_mhp;
skill->get_sp = skill_get_sp;
skill->get_state = skill_get_state;
+ skill->get_spiritball = skill_get_spiritball;
skill->get_zeny = skill_get_zeny;
skill->get_num = skill_get_num;
skill->get_cast = skill_get_cast;
@@ -18162,7 +18145,6 @@ void skill_defaults(void) {
skill->get_unit_target = skill_get_unit_target;
skill->get_unit_interval = skill_get_unit_interval;
skill->get_unit_bl_target = skill_get_unit_bl_target;
- skill->get_spiritball = skill_get_spiritball;
skill->get_unit_layout_type = skill_get_unit_layout_type;
skill->get_unit_range = skill_get_unit_range;
skill->get_cooldown = skill_get_cooldown;
@@ -18202,15 +18184,13 @@ void skill_defaults(void) {
skill->delay_fix = skill_delay_fix;
skill->check_condition_castbegin = skill_check_condition_castbegin;
skill->check_condition_castend = skill_check_condition_castend;
- skill->check_condition_char_sub = skill_check_condition_char_sub;
+ skill->consume_requirement = skill_consume_requirement;
skill->get_requirement = skill_get_requirement;
skill->check_pc_partner = skill_check_pc_partner;
- skill->consume_requirement = skill_consume_requirement;
skill->unit_move = skill_unit_move;
- skill->unit_move_unit_group = skill_unit_move_unit_group;
skill->unit_onleft = skill_unit_onleft;
skill->unit_onout = skill_unit_onout;
- skill->guildaura_sub = skill_guildaura_sub;
+ skill->unit_move_unit_group = skill_unit_move_unit_group;
skill->sit = skill_sit;
skill->brandishspear = skill_brandishspear;
skill->repairweapon = skill_repairweapon;
diff --git a/src/map/skill.h b/src/map/skill.h
index 1ca5f235a..f9dbd0f1a 100644
--- a/src/map/skill.h
+++ b/src/map/skill.h
@@ -1842,7 +1842,6 @@ struct skill_interface {
int (*unit_onleft) (uint16 skill_id, struct block_list *bl,unsigned int tick);
int (*unit_onout) (struct skill_unit *src, struct block_list *bl, unsigned int tick);
int (*unit_move_unit_group) ( struct skill_unit_group *group, int16 m,int16 dx,int16 dy);
- int (*guildaura_sub) (struct map_session_data* sd, int id, int strvit, int agidex);
int (*sit) (struct map_session_data *sd, int type);
void (*brandishspear) (struct block_list* src, struct block_list* bl, uint16 skill_id, uint16 skill_lv, unsigned int tick, int flag);
void (*repairweapon) (struct map_session_data *sd, int idx);
diff --git a/src/map/storage.c b/src/map/storage.c
index 7a4649a98..5ebbb0dde 100644
--- a/src/map/storage.c
+++ b/src/map/storage.c
@@ -294,8 +294,8 @@ int storage_storageaddfromcart(struct map_session_data* sd, int index, int amoun
* 0 : fail
* 1 : success
*------------------------------------------*/
-int storage_storagegettocart(struct map_session_data* sd, int index, int amount)
-{
+int storage_storagegettocart(struct map_session_data* sd, int index, int amount) {
+ int flag = 0;
nullpo_ret(sd);
if( index < 0 || index >= MAX_STORAGE )
@@ -307,8 +307,12 @@ int storage_storagegettocart(struct map_session_data* sd, int index, int amount)
if( amount < 1 || amount > sd->status.storage.items[index].amount )
return 0;
- if( pc->cart_additem(sd,&sd->status.storage.items[index],amount,LOG_TYPE_STORAGE) == 0 )
+ if( (flag = pc->cart_additem(sd,&sd->status.storage.items[index],amount,LOG_TYPE_STORAGE)) == 0 )
storage->delitem(sd,index,amount);
+ else {
+ clif->dropitem(sd, index,0);
+ clif->cart_additem_ack(sd,flag == 1?0x0:0x1);
+ }
return 1;
}
@@ -741,8 +745,8 @@ void storage_defaults(void) {
storage->delitem = storage_delitem;
storage->open = storage_storageopen;
storage->add = storage_storageadd;
- storage->additem = storage_additem;
storage->get = storage_storageget;
+ storage->additem = storage_additem;
storage->addfromcart = storage_storageaddfromcart;
storage->gettocart = storage_storagegettocart;
storage->close = storage_storageclose;
diff --git a/src/test/Makefile.in b/src/test/Makefile.in
index c601de9cb..c45ec3334 100644
--- a/src/test/Makefile.in
+++ b/src/test/Makefile.in
@@ -54,8 +54,8 @@ obj/%.o: %.c $(COMMON_H) $(MT19937AR_H) $(LIBCONFIG_H)
../common/obj_sql/common_sql.a:
@$(MAKE) -C ../common sql
-MT19937AR_OBJ:
+$(MT19937AR_OBJ):
@$(MAKE) -C ../../3rdparty/mt19937ar
-LIBCONFIG_OBJ:
+$(LIBCONFIG_OBJ):
@$(MAKE) -C ../../3rdparty/libconfig
diff --git a/src/tool/Makefile.in b/src/tool/Makefile.in
index 1e149c2b3..c1780fe51 100644
--- a/src/tool/Makefile.in
+++ b/src/tool/Makefile.in
@@ -56,5 +56,5 @@ obj_all/%.o: %.c $(COMMON_H) $(OTHER_H) $(LIBCONFIG_H)
../common/obj_all/mini%.o:
@$(MAKE) -C ../common sql
-LIBCONFIG_OBJ:
+$(LIBCONFIG_OBJ):
@$(MAKE) -C ../../3rdparty/libconfig