summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitlab-ci.yml841
-rw-r--r--doc/script_commands.txt43
-rw-r--r--src/common/HPMDataCheck.h2
-rw-r--r--src/map/atcommand.c8
-rw-r--r--src/map/clif.c60
-rw-r--r--src/map/clif.h3
-rw-r--r--src/map/packets_struct.h13
-rw-r--r--src/map/script.c50
-rw-r--r--src/map/skill.c2
-rw-r--r--src/plugins/HPMHooking/HPMHooking.Defs.inc6
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc4
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc1
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.Hooks.inc36
13 files changed, 866 insertions, 203 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d5599253f..e98922276 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -2,6 +2,7 @@ stages:
- primary
- secondary
- platforms
+ - clients
- extras
variables: &base_vars
@@ -19,10 +20,8 @@ variables: &base_vars
- uname -a
- ./tools/ci/retry.sh apt-get update
- ./tools/ci/retry.sh apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES
- - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok $SQLHOST
- ./tools/ci/travis.sh getplugins || true
- services:
- - mysql:latest
.branch_exceptions: &branch_exceptions
only:
@@ -38,276 +37,735 @@ pre_re:clang-3.9:
<<: *prerequisites
stage: primary
image: debian:stretch
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
INSTALL_PACKAGES: clang-3.9 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=clang-3.9 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:clang-3.9:
<<: *branch_exceptions
<<: *prerequisites
stage: primary
image: debian:stretch
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
INSTALL_PACKAGES: clang-3.9 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=clang-3.9 --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:clang-3.9:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:stretch
+ services:
+ - mariadb:10.1
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: clang-3.9 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=clang-3.9 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:clang-4.0:
<<: *branch_exceptions
<<: *prerequisites
- stage: primary
+ stage: secondary
image: debian:unstable
+ services:
+ - mariadb:10
variables:
<<: *base_vars
- INSTALL_PACKAGES: clang-4.0 mysql-client libmysqlclient-dev
+ INSTALL_PACKAGES: clang-4.0 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=clang-4.0 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:clang-4.0:
<<: *branch_exceptions
<<: *prerequisites
- stage: primary
+ stage: secondary
image: debian:unstable
+ services:
+ - mariadb:10
variables:
<<: *base_vars
- INSTALL_PACKAGES: clang-4.0 mysql-client libmysqlclient-dev
+ INSTALL_PACKAGES: clang-4.0 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=clang-4.0 --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:clang-4.0:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: clang-4.0 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=clang-4.0 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+pre_re:clang-5.0:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: secondary
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: clang-5.0 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=clang-5.0 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+re:clang-5.0:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: secondary
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: clang-5.0 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=clang-5.0 --enable-debug --enable-Werror --enable-buildbot
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:clang-5.0:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: clang-5.0 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=clang-5.0 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+pre_re:clang-6.0:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: primary
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: clang-6.0 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=clang-6.0 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+re:clang-6.0:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: primary
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: clang-6.0 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=clang-6.0 --enable-debug --enable-Werror --enable-buildbot
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:clang-6.0:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: clang-6.0 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=clang-6.0 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+pre_re:clang-7:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: secondary
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: clang-7 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=clang-7 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+re:clang-7:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: secondary
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: clang-7 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=clang-7 --enable-debug --enable-Werror --enable-buildbot
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:clang-7:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: clang-7 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=clang-7 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:gcc-4.6:
<<: *branch_exceptions
<<: *prerequisites
stage: secondary
image: debian:wheezy
+ services:
+ - mysql:5.5
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-4.6 mysql-client libmysqlclient-dev
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build CC=gcc-4.6 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:gcc-4.6:
<<: *branch_exceptions
<<: *prerequisites
stage: secondary
image: debian:wheezy
+ services:
+ - mysql:5.5
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-4.6 mysql-client libmysqlclient-dev
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build CC=gcc-4.6 --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:gcc-4.6:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:wheezy
+ services:
+ - mysql:5.5
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-4.6 mysql-client libmysqlclient-dev
+ SQLHOST: mysql
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-4.6 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:gcc-4.7:
<<: *branch_exceptions
<<: *prerequisites
stage: secondary
image: debian:wheezy
+ services:
+ - mysql:5.5
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-4.7 mysql-client libmysqlclient-dev
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build CC=gcc-4.7 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:gcc-4.7:
<<: *branch_exceptions
<<: *prerequisites
stage: secondary
image: debian:wheezy
+ services:
+ - mysql:5.5
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-4.7 mysql-client libmysqlclient-dev
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build CC=gcc-4.7 --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:gcc-4.7:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:wheezy
+ services:
+ - mysql:5.5
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-4.7 mysql-client libmysqlclient-dev
+ SQLHOST: mysql
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-4.7 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:gcc-4.8:
<<: *branch_exceptions
<<: *prerequisites
- stage: primary
+ stage: secondary
image: debian:jessie
+ services:
+ - mysql:5.5
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-4.8 mysql-client libmysqlclient-dev
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build CC=gcc-4.8 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:gcc-4.8:
<<: *branch_exceptions
<<: *prerequisites
- stage: primary
+ stage: secondary
image: debian:jessie
+ services:
+ - mysql:5.5
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-4.8 mysql-client libmysqlclient-dev
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build CC=gcc-4.8 --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:gcc-4.8:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:jessie
+ services:
+ - mysql:5.5
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-4.8 mysql-client libmysqlclient-dev
+ SQLHOST: mysql
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-4.8 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:gcc-4.9:
<<: *branch_exceptions
<<: *prerequisites
stage: primary
image: debian:jessie
+ services:
+ - mysql:5.5
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-4.9 mysql-client libmysqlclient-dev
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build CC=gcc-4.9 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:gcc-4.9:
<<: *branch_exceptions
<<: *prerequisites
stage: primary
image: debian:jessie
+ services:
+ - mysql:5.5
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-4.9 mysql-client libmysqlclient-dev
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build CC=gcc-4.9 --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:gcc-4.9:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:jessie
+ services:
+ - mysql:5.5
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-4.9 mysql-client libmysqlclient-dev
+ SQLHOST: mysql
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-4.9 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:gcc-5:
<<: *branch_exceptions
<<: *prerequisites
stage: secondary
image: debian:unstable
+ services:
+ - mariadb:10
variables:
<<: *base_vars
- INSTALL_PACKAGES: gcc-5 mysql-client libmysqlclient-dev
+ INSTALL_PACKAGES: gcc-5 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=gcc-5 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:gcc-5:
<<: *branch_exceptions
<<: *prerequisites
stage: secondary
image: debian:unstable
+ services:
+ - mariadb:10
variables:
<<: *base_vars
- INSTALL_PACKAGES: gcc-5 mysql-client libmysqlclient-dev
+ INSTALL_PACKAGES: gcc-5 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=gcc-5 --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:gcc-5:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-5 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-5 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:gcc-6:
<<: *branch_exceptions
<<: *prerequisites
stage: primary
image: debian:stretch
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:gcc-6:
<<: *branch_exceptions
<<: *prerequisites
stage: primary
image: debian:stretch
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:gcc-6:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:stretch
+ services:
+ - mariadb:10.1
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+pre_re:gcc-7:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: secondary
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-7 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-7 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+re:gcc-7:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: secondary
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-7 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-7 --enable-debug --enable-Werror --enable-buildbot
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:gcc-7:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-7 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-7 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+pre_re:gcc-8:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: secondary
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-8 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+re:gcc-8:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: secondary
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-8 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:gcc-8:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:unstable
+ services:
+ - mariadb:10
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-8 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:gcc-6_i386:
<<: *branch_exceptions
<<: *prerequisites
stage: primary
- image: vicamo/debian:sid-i386
+ image: i386/debian:stable
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
- INSTALL_PACKAGES: gcc-6 mysql-client libmysqlclient-dev
+ INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:gcc-6_i386:
<<: *branch_exceptions
<<: *prerequisites
stage: primary
- image: vicamo/debian:sid-i386
+ image: i386/debian:stable
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
- INSTALL_PACKAGES: gcc-6 mysql-client libmysqlclient-dev
+ INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:gcc-6_i386:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: i386/debian:stable
+ services:
+ - mariadb:10.1
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:gcc-6_sanitize:
<<: *branch_exceptions
<<: *prerequisites
stage: secondary
image: debian:stretch
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-renewal --disable-manager --enable-sanitize=full
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:gcc-6_sanitize:
<<: *branch_exceptions
<<: *prerequisites
stage: secondary
image: debian:stretch
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-manager --enable-sanitize=full
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:gcc-6_sanitize:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: debian:stretch
+ services:
+ - mariadb:10.1
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-manager --enable-sanitize=full --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:gcc-6_i386_sanitize:
<<: *branch_exceptions
<<: *prerequisites
stage: secondary
- image: vicamo/debian:sid-i386
+ image: i386/debian:stable
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
- INSTALL_PACKAGES: gcc-6 mysql-client libmysqlclient-dev
+ INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-renewal --disable-manager --enable-sanitize=full
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:gcc-6_i386_sanitize:
<<: *branch_exceptions
<<: *prerequisites
stage: secondary
- image: vicamo/debian:sid-i386
+ image: i386/debian:stable
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
- INSTALL_PACKAGES: gcc-6 mysql-client libmysqlclient-dev
+ INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-manager --enable-sanitize=full
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+zero-2018:gcc-6_i386_sanitize:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: clients
+ image: i386/debian:stable
+ services:
+ - mariadb:10.1
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-manager --enable-sanitize=full --enable-packetver-zero --enable-packetver=20180511
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:gcc-6_cov:
<<: *branch_exceptions
<<: *prerequisites
stage: secondary
image: debian:stretch
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-6 gcovr mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-renewal CFLAGS="-coverage" LDFLAGS="-coverage"
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
- gcovr -r . --gcov-executable=gcov-6 -o gcov_pre.txt
- gcovr -r . --gcov-executable=gcov-6 --html -o gcov_pre.html
- cat gcov_pre.txt
@@ -321,12 +779,15 @@ re:gcc-6_cov:
<<: *prerequisites
stage: secondary
image: debian:stretch
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc-6 gcovr mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot CFLAGS="-coverage" LDFLAGS="-coverage"
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
- gcovr -r . --gcov-executable=gcov-6 -o gcov_re.txt
- gcovr -r . --gcov-executable=gcov-6 --html -o gcov_re.html
- cat gcov_re.txt
@@ -342,77 +803,100 @@ pre_re:debian-oldstable:
<<: *prerequisites
stage: platforms
image: debian:oldstable
+ services:
+ - mysql:5.5
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mysql-client libmysqlclient-dev
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:debian-oldstable:
<<: *branch_exceptions
<<: *prerequisites
stage: platforms
image: debian:oldstable
+ services:
+ - mysql:5.5
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mysql-client libmysqlclient-dev
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:debian-stable:
<<: *branch_exceptions
<<: *prerequisites
stage: platforms
image: debian:stable
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:debian-stable:
<<: *branch_exceptions
<<: *prerequisites
stage: platforms
image: debian:stable
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:debian-testing:
<<: *branch_exceptions
<<: *prerequisites
stage: platforms
image: debian:testing
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:debian-testing:
<<: *branch_exceptions
<<: *prerequisites
stage: platforms
image: debian:testing
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:centos-previous:
<<: *branch_exceptions
stage: platforms
image: centos:6
+ services:
+ - mysql:5.5
+ variables:
+ <<: *base_vars
+ SQLHOST: mysql
before_script:
- echo "Building $CI_BUILD_NAME"
- uname -a
@@ -420,20 +904,21 @@ pre_re:centos-previous:
- yum install -y make mysql-devel pcre-devel git zlib-devel mysql
- yum install -y centos-release-scl
- yum install -y yum install devtoolset-3-toolchain
- - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok $SQLHOST
- ./tools/ci/travis.sh getplugins || true
- services:
- - mysql:latest
- variables:
- <<: *base_vars
script:
- scl enable devtoolset-3 './tools/ci/travis.sh build CFLAGS="-Wno-cast-qual" --enable-debug --enable-Werror --enable-buildbot --disable-renewal'
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:centos-previous:
<<: *branch_exceptions
stage: platforms
image: centos:6
+ services:
+ - mysql:5.5
+ variables:
+ <<: *base_vars
+ SQLHOST: mysql
before_script:
- echo "Building $CI_BUILD_NAME"
- uname -a
@@ -441,53 +926,51 @@ re:centos-previous:
- yum install -y make mysql-devel pcre-devel git zlib-devel mysql
- yum install -y centos-release-scl
- yum install -y yum install devtoolset-3-toolchain
- - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok $SQLHOST
- ./tools/ci/travis.sh getplugins || true
- services:
- - mysql:latest
- variables:
- <<: *base_vars
script:
- scl enable devtoolset-3 './tools/ci/travis.sh build CFLAGS="-Wno-cast-qual" --enable-debug --enable-Werror --enable-buildbot'
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:centos-current:
<<: *branch_exceptions
stage: platforms
image: centos:7
+ services:
+ - mariadb:5.5
before_script:
- echo "Building $CI_BUILD_NAME"
- uname -a
- yum -y update
- - yum install -y gcc make mysql-devel pcre-devel git zlib-devel mysql
- - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok mysql
+ - yum install -y gcc make mariadb-devel pcre-devel git zlib-devel mariadb
+ - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok $SQLHOST
- ./tools/ci/travis.sh getplugins || true
- services:
- - mysql:latest
variables:
<<: *base_vars
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:centos-current:
<<: *branch_exceptions
stage: platforms
image: centos:7
+ services:
+ - mariadb:5.5
before_script:
- echo "Building $CI_BUILD_NAME"
- uname -a
- yum -y update
- - yum install -y gcc make mysql-devel pcre-devel git zlib-devel mysql
- - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok mysql
+ - yum install -y gcc make mariadb-devel pcre-devel git zlib-devel mariadb
+ - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok $SQLHOST
- ./tools/ci/travis.sh getplugins || true
- services:
- - mysql:latest
variables:
<<: *base_vars
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:ubuntu-xenial:
<<: *branch_exceptions
@@ -495,13 +978,14 @@ pre_re:ubuntu-xenial:
stage: platforms
image: ubuntu:16.04
services:
- - mysql:latest
+ - mysql:5.7
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mysql-client libmysqlclient-dev
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:ubuntu-xenial:
<<: *branch_exceptions
@@ -509,13 +993,44 @@ re:ubuntu-xenial:
stage: platforms
image: ubuntu:16.04
services:
- - mysql:latest
+ - mysql:5.7
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc mysql-client libmysqlclient-dev
+ SQLHOST: mysql
+ script:
+ - ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+pre_re:ubuntu-bionic:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: platforms
+ image: ubuntu:18.04
+ services:
+ - mysql:5.7
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc mysql-client libmysqlclient-dev
+ SQLHOST: mysql
+ script:
+ - ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+re:ubuntu-bionic:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: platforms
+ image: ubuntu:18.04
+ services:
+ - mysql:5.7
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mysql-client libmysqlclient-dev
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
# SQL servers
@@ -524,204 +1039,210 @@ pre_re:mysql-5.5:
<<: *prerequisites
stage: platforms
image: debian:jessie
+ services:
+ - mysql:5.5
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mysql-client-5.5 libmysqlclient-dev
- services:
- - mysql:5.5
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:mysql-5.5:
<<: *branch_exceptions
<<: *prerequisites
stage: platforms
image: debian:jessie
+ services:
+ - mysql:5.5
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mysql-client-5.5 libmysqlclient-dev
- services:
- - mysql:5.5
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:mysql-5.6:
<<: *branch_exceptions
<<: *prerequisites
stage: platforms
- image: debian:jessie
+ image: debian:unstable
+ services:
+ - mysql:5.6
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mysql-client libmysqlclient-dev
- services:
- - mysql:5.6
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:mysql-5.6:
<<: *branch_exceptions
<<: *prerequisites
stage: platforms
- image: debian:jessie
+ image: debian:unstable
+ services:
+ - mysql:5.6
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mysql-client libmysqlclient-dev
- services:
- - mysql:5.6
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:mysql-5.7:
<<: *branch_exceptions
<<: *prerequisites
stage: platforms
image: debian:unstable
+ services:
+ - mysql:5.7
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mysql-client-5.7 libmysqlclient-dev
- services:
- - mysql:5.7
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:mysql-5.7:
<<: *branch_exceptions
<<: *prerequisites
stage: platforms
image: debian:unstable
+ services:
+ - mysql:5.7
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mysql-client-5.7 libmysqlclient-dev
- services:
- - mysql:5.7
+ SQLHOST: mysql
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mysql
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:mariadb-10.0:
<<: *branch_exceptions
+ <<: *prerequisites
stage: platforms
image: debian:jessie
+ services:
+ - mariadb:10.0
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mariadb-client-10.0 libmysqlclient-dev
- before_script:
- - echo "Building $CI_BUILD_NAME"
- - uname -a
- - ./tools/ci/retry.sh apt-get update
- - ./tools/ci/retry.sh apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES
- - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok mariadb
- - ./tools/ci/travis.sh getplugins || true
- services:
- - mariadb:10.0
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mariadb
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:mariadb-10.0:
<<: *branch_exceptions
+ <<: *prerequisites
stage: platforms
image: debian:jessie
+ services:
+ - mariadb:10.0
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mariadb-client-10.0 libmysqlclient-dev
- before_script:
- - echo "Building $CI_BUILD_NAME"
- - uname -a
- - ./tools/ci/retry.sh apt-get update
- - ./tools/ci/retry.sh apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES
- - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok mariadb
- - ./tools/ci/travis.sh getplugins || true
- services:
- - mariadb:10.0
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mariadb
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
-pre_re:mariadb-latest:
+pre_re:mariadb-10.1:
<<: *branch_exceptions
+ <<: *prerequisites
stage: platforms
- image: debian:unstable
+ image: debian:stable
+ services:
+ - mariadb:10.1
variables:
<<: *base_vars
INSTALL_PACKAGES: gcc mariadb-client-10.1 libmariadbclient-dev-compat
- before_script:
- - echo "Building $CI_BUILD_NAME"
- - uname -a
- - ./tools/ci/retry.sh apt-get update
- - ./tools/ci/retry.sh apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES
- - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok mariadb
- - ./tools/ci/travis.sh getplugins || true
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+re:mariadb-10.1:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: platforms
+ image: debian:stable
+ services:
+ - mariadb:10.1
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc mariadb-client-10.1 libmariadbclient-dev-compat
+ SQLHOST: mariadb
+ script:
+ - ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
+
+pre_re:mariadb-latest:
+ <<: *branch_exceptions
+ <<: *prerequisites
+ stage: platforms
+ image: debian:unstable
services:
- mariadb:latest
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mariadb
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:mariadb-latest:
<<: *branch_exceptions
+ <<: *prerequisites
stage: platforms
image: debian:unstable
- variables:
- <<: *base_vars
- INSTALL_PACKAGES: gcc mariadb-client-10.1 libmariadbclient-dev-compat
- before_script:
- - echo "Building $CI_BUILD_NAME"
- - uname -a
- - ./tools/ci/retry.sh apt-get update
- - ./tools/ci/retry.sh apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES
- - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok mariadb
- - ./tools/ci/travis.sh getplugins || true
services:
- mariadb:latest
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat
+ SQLHOST: mariadb
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok mariadb
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
pre_re:percona:
<<: *branch_exceptions
+ <<: *prerequisites
stage: platforms
- image: debian:jessie
- variables:
- <<: *base_vars
- INSTALL_PACKAGES: gcc mysql-client libmysqlclient-dev
- before_script:
- - echo "Building $CI_BUILD_NAME"
- - uname -a
- - ./tools/ci/retry.sh apt-get update
- - ./tools/ci/retry.sh apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES
- - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok percona
- - ./tools/ci/travis.sh getplugins || true
+ image: debian:stretch
services:
- percona:latest
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat
+ SQLHOST: percona
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok percona
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
re:percona:
<<: *branch_exceptions
+ <<: *prerequisites
stage: platforms
- image: debian:jessie
- variables:
- <<: *base_vars
- INSTALL_PACKAGES: gcc mysql-client libmysqlclient-dev
- before_script:
- - echo "Building $CI_BUILD_NAME"
- - uname -a
- - ./tools/ci/retry.sh apt-get update
- - ./tools/ci/retry.sh apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES
- - ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok percona
- - ./tools/ci/travis.sh getplugins || true
+ image: debian:stretch
services:
- percona:latest
+ variables:
+ <<: *base_vars
+ INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat
+ SQLHOST: percona
script:
- ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot
- - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok percona
+ - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST
# Documentation
pages:
diff --git a/doc/script_commands.txt b/doc/script_commands.txt
index a00756056..53d24de4d 100644
--- a/doc/script_commands.txt
+++ b/doc/script_commands.txt
@@ -6631,18 +6631,49 @@ Examples:
*unitwarp(<GID>, <Mapname>, <x>, <y>)
*unitattack(<GID>, <Target ID>)
*unitstop(<GID>)
-*unittalk(<GID>, <Text>)
+*unittalk(<GID>, <Text>{, show_name{, <send_target>{, <target_id>}}})
*unitemote(<GID>, <Emote>)
Okay, these commands should be fairly self explaining.
For the emotions, you can look in db/constants.conf for prefixes with e_
PS: unitwarp() supports a <GID> of zero, which causes the executor of the
+PS: unittalk() can receive 3 extra parameters:
+ show_name:
+ true: Shows Unit name like "UnitName : Message" (default)
+ false: Hides Unit name
+ send_target:
+ AREA_CHAT_WOC: sends the message to everyone in view range including the attached unit (default)
+ SELF: sends the message to the given unit gid only
+ target_id:
+ if send_target is set to SELF, the message will be shown by the given gid,
+ target_id allows changing the unit that will see the message.
script to be affected. This can be used with OnTouchNPC to warp
monsters:
OnTouchNPC:
unitwarp(0, "this", -1, -1);
+ // hide the npc name from the text
+ unittalk(getnpcid(0), "foobar", false);
+
+ // display by npc to everyone
+ unittalk(getnpcid(0), "foobar", true);
+
+ // display by npc to npc
+ unittalk(getnpcid(0), "foobar", true, SELF);
+
+ // display the text by the npc to the attached player only
+ unittalk(getnpcid(0), "foobar", true, SELF, playerattached());
+
+ // display by player to everyone
+ unittalk(playerattached(), "foobar", true);
+
+ // display by player to himself only
+ unittalk(playerattached(), "foobar", true, SELF);
+
+ // display the text by the 1st player to the attached player only
+ unittalk(getcharid(CHAR_ID_ACCOUNT, "Name"), "foobar", true, SELF, playerattached());
+
---------------------------------------
*disablenpc("<NPC object name>")
@@ -6750,12 +6781,16 @@ A debug message also shows on the console when no events are triggered.
---------------------------------------
-*npctalk("<message>"{, "<npc name>"})
+*npctalk("<message>"{, "<npc name>"{, <show_name>}})
+
+show_npcname values:
+ true: shows npc name (default)
+ false: hide npc name
This command will display a message to the surrounding area as if the NPC
object running it was a player talking - that is, above their head and in
-the chat window. The display name of the NPC will get appended in front of
-the message to complete the effect.
+the chat window. If show_npcname is true the name of the NPC will get appended in front of
+the message, otherwise the npc name will not be shown.
// This will make everyone in the area see the NPC greet the character
// who just invoked it.
diff --git a/src/common/HPMDataCheck.h b/src/common/HPMDataCheck.h
index 2fee6007c..c004c534e 100644
--- a/src/common/HPMDataCheck.h
+++ b/src/common/HPMDataCheck.h
@@ -618,8 +618,10 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = {
{ "PACKET_ZC_GROUP_LIST_SUB", sizeof(struct PACKET_ZC_GROUP_LIST_SUB), SERVER_TYPE_MAP },
{ "PACKET_ZC_MAIL_LIST", sizeof(struct PACKET_ZC_MAIL_LIST), SERVER_TYPE_MAP },
{ "PACKET_ZC_MSG_COLOR", sizeof(struct PACKET_ZC_MSG_COLOR), SERVER_TYPE_MAP },
+ { "PACKET_ZC_NOTIFY_CHAT", sizeof(struct PACKET_ZC_NOTIFY_CHAT), SERVER_TYPE_MAP },
{ "PACKET_ZC_NOTIFY_CLAN_CHAT", sizeof(struct PACKET_ZC_NOTIFY_CLAN_CHAT), SERVER_TYPE_MAP },
{ "PACKET_ZC_NOTIFY_CLAN_CONNECTINFO", sizeof(struct PACKET_ZC_NOTIFY_CLAN_CONNECTINFO), SERVER_TYPE_MAP },
+ { "PACKET_ZC_NOTIFY_PLAYERCHAT", sizeof(struct PACKET_ZC_NOTIFY_PLAYERCHAT), SERVER_TYPE_MAP },
{ "PACKET_ZC_NOTIFY_UNREADMAIL", sizeof(struct PACKET_ZC_NOTIFY_UNREADMAIL), SERVER_TYPE_MAP },
{ "PACKET_ZC_OPEN_UI", sizeof(struct PACKET_ZC_OPEN_UI), SERVER_TYPE_MAP },
{ "PACKET_ZC_PRIVATE_AIRSHIP_RESPONSE", sizeof(struct PACKET_ZC_PRIVATE_AIRSHIP_RESPONSE), SERVER_TYPE_MAP },
diff --git a/src/map/atcommand.c b/src/map/atcommand.c
index ae0c776c6..a9b8fb7b0 100644
--- a/src/map/atcommand.c
+++ b/src/map/atcommand.c
@@ -6228,7 +6228,7 @@ ACMD(npctalk)
snprintf(temp, sizeof(temp), "%s : %s", name, mes);
if(ifcolor) clif->messagecolor(&nd->bl,color,temp);
- else clif->disp_overhead(&nd->bl, temp);
+ else clif->disp_overhead(&nd->bl, temp, AREA_CHAT_WOC, NULL);
return true;
}
@@ -6288,7 +6288,7 @@ ACMD(pettalk)
}
snprintf(temp, sizeof temp ,"%s : %s", pd->pet.name, mes);
- clif->disp_overhead(&pd->bl, temp);
+ clif->disp_overhead(&pd->bl, temp, AREA_CHAT_WOC, NULL);
return true;
}
@@ -7063,7 +7063,7 @@ ACMD(homtalk)
}
snprintf(temp, sizeof temp ,"%s : %s", sd->hd->homunculus.name, mes);
- clif->disp_overhead(&sd->hd->bl, temp);
+ clif->disp_overhead(&sd->hd->bl, temp, AREA_CHAT_WOC, NULL);
return true;
}
@@ -7423,7 +7423,7 @@ ACMD(me)
}
safesnprintf(atcmd_output, sizeof(atcmd_output), msg_fd(fd,270), sd->status.name, tempmes); // *%s %s*
- clif->disp_overhead(&sd->bl, atcmd_output);
+ clif->disp_overhead(&sd->bl, atcmd_output, AREA_CHAT_WOC, NULL);
return true;
}
diff --git a/src/map/clif.c b/src/map/clif.c
index 820a219f6..18fb063ef 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -8965,35 +8965,60 @@ void clif_slide(struct block_list *bl, int x, int y)
/// Public chat message (ZC_NOTIFY_CHAT). lordalfa/Skotlex - used by @me as well
/// 008d <packet len>.W <id>.L <message>.?B
-void clif_disp_overhead(struct block_list *bl, const char *mes)
+void clif_disp_overhead(struct block_list *bl, const char *mes, enum send_target target, struct block_list *target_bl)
{
- unsigned char buf[256]; //This should be more than sufficient, the theoretical max is CHAT_SIZE + 8 (pads and extra inserted crap)
+ char buf[CHAT_SIZE_MAX + (int)sizeof(struct PACKET_ZC_NOTIFY_CHAT)];
+ uint32 max_len = CHAT_SIZE_MAX - (int)sizeof(struct PACKET_ZC_NOTIFY_CHAT);
+ struct PACKET_ZC_NOTIFY_CHAT *p = (struct PACKET_ZC_NOTIFY_CHAT *)&buf;
int mes_len;
nullpo_retv(bl);
nullpo_retv(mes);
- mes_len = (int)strlen(mes)+1; //Account for \0
- if (mes_len > (int)sizeof(buf)-8) {
- ShowError("clif_disp_overhead: Message too long (length %d)\n", mes_len);
- mes_len = sizeof(buf)-8; //Trunk it to avoid problems.
+ mes_len = (int)strlen(mes) + 1; //Account for \0
+ if (mes_len > max_len) {
+ ShowError("clif_disp_overhead: Truncated message '%s' (len=%d, max=%u).\n", mes, mes_len, max_len);
+ mes_len = max_len; //Trunk it to avoid problems.
}
+
// send message to others
- WBUFW(buf,0) = 0x8d;
- WBUFW(buf,2) = mes_len + 8; // len of message + 8 (command+len+id)
- WBUFL(buf,4) = bl->id;
- safestrncpy(WBUFP(buf,8), mes, mes_len);
- clif->send(buf, WBUFW(buf,2), bl, AREA_CHAT_WOC);
+ p->PacketType = 0x8d;
+ p->PacketLength = mes_len + (int)sizeof(struct PACKET_ZC_NOTIFY_CHAT); // len of message + 8 (command+len+id)
+ p->GID = bl->id;
+ safestrncpy(p->Message, mes, mes_len);
+ if (target == SELF && target_bl != NULL) {
+ clif->send(p, p->PacketLength, target_bl, SELF);
+ } else {
+ clif->send(p, p->PacketLength, bl, AREA_CHAT_WOC);
- // send back message to the speaker
- if (bl->type == BL_PC) {
- WBUFW(buf,0) = 0x8e;
- WBUFW(buf, 2) = mes_len + 4;
- safestrncpy(WBUFP(buf,4), mes, mes_len);
- clif->send(buf, WBUFW(buf,2), bl, SELF);
+ // send back message to the speaker
+ if (bl->type == BL_PC)
+ clif->notify_playerchat(bl, mes);
}
}
+void clif_notify_playerchat(struct block_list *bl, const char *mes)
+{
+ char buf[CHAT_SIZE_MAX + (int)sizeof(struct PACKET_ZC_NOTIFY_PLAYERCHAT)];
+ uint32 max_len = CHAT_SIZE_MAX - (int)sizeof(struct PACKET_ZC_NOTIFY_PLAYERCHAT);
+ struct PACKET_ZC_NOTIFY_PLAYERCHAT *p = (struct PACKET_ZC_NOTIFY_PLAYERCHAT *)&buf;
+ int mes_len;
+
+ nullpo_retv(bl);
+ nullpo_retv(mes);
+
+ mes_len = (int)strlen(mes) + 1; // Account for \0
+ if (mes_len > max_len) {
+ ShowError("clif_notify_playerchat: Truncated message '%s' (len=%d, max=%u).\n", mes, mes_len, max_len);
+ mes_len = max_len; // Truncate to avoid problems.
+ }
+
+ p->PacketType = 0x8e;
+ p->PacketLength = mes_len + (int)sizeof(struct PACKET_ZC_NOTIFY_PLAYERCHAT);
+ safestrncpy(p->Message, mes, mes_len);
+ clif->send(p, p->PacketLength, bl, SELF);
+}
+
/*==========================
* Minimap fix [Kevin]
* Remove dot from minimap
@@ -21624,6 +21649,7 @@ void clif_defaults(void) {
clif->messagecolor_self = clif_messagecolor_self;
clif->messagecolor = clif_messagecolor;
clif->disp_overhead = clif_disp_overhead;
+ clif->notify_playerchat = clif_notify_playerchat;
clif->msgtable_skill = clif_msgtable_skill;
clif->msgtable = clif_msgtable;
clif->msgtable_num = clif_msgtable_num;
diff --git a/src/map/clif.h b/src/map/clif.h
index 63eaeff49..1dffc2711 100644
--- a/src/map/clif.h
+++ b/src/map/clif.h
@@ -939,7 +939,8 @@ struct clif_interface {
void (*broadcast2) (struct block_list *bl, const char *mes, int len, unsigned int fontColor, short fontType, short fontSize, short fontAlign, short fontY, enum send_target target);
void (*messagecolor_self) (int fd, uint32 color, const char *msg);
void (*messagecolor) (struct block_list* bl, uint32 color, const char* msg);
- void (*disp_overhead) (struct block_list *bl, const char* mes);
+ void (*disp_overhead) (struct block_list *bl, const char *mes, enum send_target target, struct block_list *target_bl);
+ void (*notify_playerchat) (struct block_list *bl, const char *mes);
void (*msgtable) (struct map_session_data* sd, enum clif_messages msg_id);
void (*msgtable_num) (struct map_session_data *sd, enum clif_messages msg_id, int value);
void (*msgtable_skill) (struct map_session_data *sd, uint16 skill_id, enum clif_messages msg_id);
diff --git a/src/map/packets_struct.h b/src/map/packets_struct.h
index 665ef78cc..18e787ed5 100644
--- a/src/map/packets_struct.h
+++ b/src/map/packets_struct.h
@@ -1797,6 +1797,19 @@ struct packet_ZC_REFUSE_LOGIN {
char block_date[20];
} __attribute__((packed));
+struct PACKET_ZC_NOTIFY_CHAT {
+ int16 PacketType;
+ int16 PacketLength;
+ uint32 GID;
+ char Message[];
+} __attribute__((packed));
+
+struct PACKET_ZC_NOTIFY_PLAYERCHAT {
+ int16 PacketType;
+ int16 PacketLength;
+ char Message[];
+} __attribute__((packed));
+
#if !defined(sun) && (!defined(__NETBSD__) || __NetBSD_Version__ >= 600000000) // NetBSD 5 and Solaris don't like pragma pack but accept the packed attribute
#pragma pack(pop)
#endif // not NetBSD < 6 / Solaris
diff --git a/src/map/script.c b/src/map/script.c
index 5252c0ff0..e1d26e731 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -15567,12 +15567,13 @@ BUILDIN(message)
/*==========================================
* npctalk (sends message to surrounding area)
- * usage: npctalk "<message>"{,"<npc name>"};
+ * usage: npctalk("<message>"{, "<npc name>"{, <show_name>}});
*------------------------------------------*/
BUILDIN(npctalk)
{
struct npc_data* nd;
const char *str = script_getstr(st,2);
+ bool show_name = true;
if (script_hasdata(st, 3)) {
nd = npc->name2id(script_getstr(st, 3));
@@ -15580,12 +15581,20 @@ BUILDIN(npctalk)
nd = map->id2nd(st->oid);
}
+ if (script_hasdata(st, 4)) {
+ show_name = (script_getnum(st, 4) != 0) ? true : false;
+ }
+
if (nd != NULL) {
char name[NAME_LENGTH], message[256];
safestrncpy(name, nd->name, sizeof(name));
strtok(name, "#"); // discard extra name identifier if present
- safesnprintf(message, sizeof(message), "%s : %s", name, str);
- clif->disp_overhead(&nd->bl, message);
+ if (show_name) {
+ safesnprintf(message, sizeof(message), "%s : %s", name, str);
+ } else {
+ safesnprintf(message, sizeof(message), "%s", str);
+ }
+ clif->disp_overhead(&nd->bl, message, AREA_CHAT_WOC, NULL);
}
return true;
@@ -20108,15 +20117,29 @@ BUILDIN(unitstop) {
/// Makes the unit say the message
///
-/// unittalk <unit_id>,"<message>";
+/// unittalk(<unit_id>,"<message>"{, show_name{, <send_target>{, <target_id>}}});
BUILDIN(unittalk) {
int unit_id;
const char* message;
- struct block_list* bl;
+ struct block_list *bl, *target_bl = NULL;
+ bool show_name = true;
+ enum send_target target = AREA_CHAT_WOC;
unit_id = script_getnum(st,2);
message = script_getstr(st, 3);
+ if (script_hasdata(st, 4)) {
+ show_name = (script_getnum(st, 4) != 0) ? true : false;
+ }
+
+ if (script_hasdata(st, 5)) {
+ target = script_getnum(st, 5);
+ }
+
+ if (script_hasdata(st, 6)) {
+ target_bl = map->id2bl(script_getnum(st, 6));
+ }
+
bl = map->id2bl(unit_id);
if( bl != NULL ) {
struct StringBuf sbuf;
@@ -20125,8 +20148,17 @@ BUILDIN(unittalk) {
safestrncpy(blname, clif->get_bl_name(bl), sizeof(blname));
if(bl->type == BL_NPC)
strtok(blname, "#");
- StrBuf->Printf(&sbuf, "%s : %s", blname, message);
- clif->disp_overhead(bl, StrBuf->Value(&sbuf));
+ if (show_name) {
+ StrBuf->Printf(&sbuf, "%s : %s", blname, message);
+ } else {
+ StrBuf->Printf(&sbuf, "%s", message);
+ }
+
+ if (bl->type == BL_PC && target == SELF && (target_bl == NULL || bl == target_bl)) {
+ clif->notify_playerchat(bl, StrBuf->Value(&sbuf));
+ } else {
+ clif->disp_overhead(bl, StrBuf->Value(&sbuf), target, target_bl);
+ }
StrBuf->Destroy(&sbuf);
}
@@ -24642,7 +24674,7 @@ void script_parse_builtin(void) {
BUILDIN_DEF2(atcommand,"charcommand","s"), // [MouseJstr]
BUILDIN_DEF(movenpc,"sii?"), // [MouseJstr]
BUILDIN_DEF(message,"vs"), // [MouseJstr]
- BUILDIN_DEF(npctalk,"s?"), // [Valaris]
+ BUILDIN_DEF(npctalk,"s??"), // [Valaris][Murilo BiO]
BUILDIN_DEF(mobcount,"ss"),
BUILDIN_DEF(getlook,"i"),
BUILDIN_DEF(getsavepoint,"i"),
@@ -24771,7 +24803,7 @@ void script_parse_builtin(void) {
BUILDIN_DEF(unitwarp,"isii"),
BUILDIN_DEF(unitattack,"iv?"),
BUILDIN_DEF(unitstop,"i"),
- BUILDIN_DEF(unittalk,"is"),
+ BUILDIN_DEF(unittalk,"is???"),
BUILDIN_DEF(unitemote,"ii"),
BUILDIN_DEF(unitskilluseid,"ivi?"), // originally by Qamera [Celest]
BUILDIN_DEF(unitskillusepos,"iviii"), // [Celest]
diff --git a/src/map/skill.c b/src/map/skill.c
index 34c36d7f3..f437ce66c 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -7168,7 +7168,7 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
//NOTE: mobs don't have the sprite animation that is used when performing this skill (will cause glitches)
char temp[70];
snprintf(temp, sizeof(temp), "%s : %s !!", md->name, skill->get_desc(skill_id));
- clif->disp_overhead(&md->bl,temp);
+ clif->disp_overhead(&md->bl, temp, AREA_CHAT_WOC, NULL);
}
break;
diff --git a/src/plugins/HPMHooking/HPMHooking.Defs.inc b/src/plugins/HPMHooking/HPMHooking.Defs.inc
index e1d9af73a..cb1ce11fb 100644
--- a/src/plugins/HPMHooking/HPMHooking.Defs.inc
+++ b/src/plugins/HPMHooking/HPMHooking.Defs.inc
@@ -1448,8 +1448,10 @@ typedef void (*HPMHOOK_pre_clif_messagecolor_self) (int *fd, uint32 *color, cons
typedef void (*HPMHOOK_post_clif_messagecolor_self) (int fd, uint32 color, const char *msg);
typedef void (*HPMHOOK_pre_clif_messagecolor) (struct block_list **bl, uint32 *color, const char **msg);
typedef void (*HPMHOOK_post_clif_messagecolor) (struct block_list *bl, uint32 color, const char *msg);
-typedef void (*HPMHOOK_pre_clif_disp_overhead) (struct block_list **bl, const char **mes);
-typedef void (*HPMHOOK_post_clif_disp_overhead) (struct block_list *bl, const char *mes);
+typedef void (*HPMHOOK_pre_clif_disp_overhead) (struct block_list **bl, const char **mes, enum send_target *target, struct block_list **target_bl);
+typedef void (*HPMHOOK_post_clif_disp_overhead) (struct block_list *bl, const char *mes, enum send_target target, struct block_list *target_bl);
+typedef void (*HPMHOOK_pre_clif_notify_playerchat) (struct block_list **bl, const char **mes);
+typedef void (*HPMHOOK_post_clif_notify_playerchat) (struct block_list *bl, const char *mes);
typedef void (*HPMHOOK_pre_clif_msgtable) (struct map_session_data **sd, enum clif_messages *msg_id);
typedef void (*HPMHOOK_post_clif_msgtable) (struct map_session_data *sd, enum clif_messages msg_id);
typedef void (*HPMHOOK_pre_clif_msgtable_num) (struct map_session_data **sd, enum clif_messages *msg_id, int *value);
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
index 803948d89..94e86df4d 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
@@ -1044,6 +1044,8 @@ struct {
struct HPMHookPoint *HP_clif_messagecolor_post;
struct HPMHookPoint *HP_clif_disp_overhead_pre;
struct HPMHookPoint *HP_clif_disp_overhead_post;
+ struct HPMHookPoint *HP_clif_notify_playerchat_pre;
+ struct HPMHookPoint *HP_clif_notify_playerchat_post;
struct HPMHookPoint *HP_clif_msgtable_pre;
struct HPMHookPoint *HP_clif_msgtable_post;
struct HPMHookPoint *HP_clif_msgtable_num_pre;
@@ -7431,6 +7433,8 @@ struct {
int HP_clif_messagecolor_post;
int HP_clif_disp_overhead_pre;
int HP_clif_disp_overhead_post;
+ int HP_clif_notify_playerchat_pre;
+ int HP_clif_notify_playerchat_post;
int HP_clif_msgtable_pre;
int HP_clif_msgtable_post;
int HP_clif_msgtable_num_pre;
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
index 2658bef00..9135ed08d 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
@@ -545,6 +545,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(clif->messagecolor_self, HP_clif_messagecolor_self) },
{ HP_POP(clif->messagecolor, HP_clif_messagecolor) },
{ HP_POP(clif->disp_overhead, HP_clif_disp_overhead) },
+ { HP_POP(clif->notify_playerchat, HP_clif_notify_playerchat) },
{ HP_POP(clif->msgtable, HP_clif_msgtable) },
{ HP_POP(clif->msgtable_num, HP_clif_msgtable_num) },
{ HP_POP(clif->msgtable_skill, HP_clif_msgtable_skill) },
diff --git a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
index 497d1b646..c055c6c09 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
@@ -13570,14 +13570,14 @@ void HP_clif_messagecolor(struct block_list *bl, uint32 color, const char *msg)
}
return;
}
-void HP_clif_disp_overhead(struct block_list *bl, const char *mes) {
+void HP_clif_disp_overhead(struct block_list *bl, const char *mes, enum send_target target, struct block_list *target_bl) {
int hIndex = 0;
if (HPMHooks.count.HP_clif_disp_overhead_pre > 0) {
- void (*preHookFunc) (struct block_list **bl, const char **mes);
+ void (*preHookFunc) (struct block_list **bl, const char **mes, enum send_target *target, struct block_list **target_bl);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_disp_overhead_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_clif_disp_overhead_pre[hIndex].func;
- preHookFunc(&bl, &mes);
+ preHookFunc(&bl, &mes, &target, &target_bl);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -13585,12 +13585,38 @@ void HP_clif_disp_overhead(struct block_list *bl, const char *mes) {
}
}
{
- HPMHooks.source.clif.disp_overhead(bl, mes);
+ HPMHooks.source.clif.disp_overhead(bl, mes, target, target_bl);
}
if (HPMHooks.count.HP_clif_disp_overhead_post > 0) {
- void (*postHookFunc) (struct block_list *bl, const char *mes);
+ void (*postHookFunc) (struct block_list *bl, const char *mes, enum send_target target, struct block_list *target_bl);
for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_disp_overhead_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_clif_disp_overhead_post[hIndex].func;
+ postHookFunc(bl, mes, target, target_bl);
+ }
+ }
+ return;
+}
+void HP_clif_notify_playerchat(struct block_list *bl, const char *mes) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_clif_notify_playerchat_pre > 0) {
+ void (*preHookFunc) (struct block_list **bl, const char **mes);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_notify_playerchat_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_notify_playerchat_pre[hIndex].func;
+ preHookFunc(&bl, &mes);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.clif.notify_playerchat(bl, mes);
+ }
+ if (HPMHooks.count.HP_clif_notify_playerchat_post > 0) {
+ void (*postHookFunc) (struct block_list *bl, const char *mes);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_notify_playerchat_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_notify_playerchat_post[hIndex].func;
postHookFunc(bl, mes);
}
}