From 2321cf84b0120ed1bf3ca38439ee44e7bd8c8dd4 Mon Sep 17 00:00:00 2001 From: slawkens Date: Mon, 7 Nov 2022 09:10:19 +0100 Subject: [PATCH] patch changes & fixes from master branch remove VERSION file update rules add 33 migration add get_version_for_release.sh script update schema add use_character_sample_skills --- CREDITS | 2 +- VERSION | 1 - common.php | 2 +- config.php | 2 ++ install/includes/schema.sql | 4 ++-- nginx-sample.conf | 4 ++-- release.sh | 8 ++++---- system/get_version_for_release.php | 4 ++++ system/libs/CreateCharacter.php | 22 +++++++++++++++++----- system/libs/pot/OTS_Player.php | 2 +- system/migrations/33.php | 6 ++++++ system/templates/rules.html.twig | 8 +------- 12 files changed, 41 insertions(+), 24 deletions(-) delete mode 100644 VERSION create mode 100644 system/get_version_for_release.php create mode 100644 system/migrations/33.php diff --git a/CREDITS b/CREDITS index f727b661..404de30c 100644 --- a/CREDITS +++ b/CREDITS @@ -1,3 +1,3 @@ * Gesior.pl (2007 - 2008) -* Slawkens (2009 - 2021) +* Slawkens (2009 - 2022) * Contributors listed in CONTRIBUTORS.txt diff --git a/VERSION b/VERSION deleted file mode 100644 index 16d5c109..00000000 --- a/VERSION +++ /dev/null @@ -1 +0,0 @@ -0.9.0-dev \ No newline at end of file diff --git a/common.php b/common.php index f0927d6b..df529a4a 100644 --- a/common.php +++ b/common.php @@ -27,7 +27,7 @@ if (version_compare(phpversion(), '7.1', '<')) die('PHP version 7.1 or higher is const MYAAC = true; const MYAAC_VERSION = '0.9.0-dev'; -const DATABASE_VERSION = 32; +const DATABASE_VERSION = 33; const TABLE_PREFIX = 'myaac_'; define('START_TIME', microtime(true)); define('MYAAC_OS', stripos(PHP_OS, 'WIN') === 0 ? 'WINDOWS' : (strtoupper(PHP_OS) === 'DARWIN' ? 'MAC' : 'LINUX')); diff --git a/config.php b/config.php index 36eda984..4f4d4c5a 100644 --- a/config.php +++ b/config.php @@ -164,6 +164,8 @@ $config = array( 4 => 'Knight Sample' ), + 'use_character_sample_skills' => false, + // it must show limited number of players after using search in character page 'characters_search_limit' => 15, diff --git a/install/includes/schema.sql b/install/includes/schema.sql index fb097bb0..8a12dd40 100644 --- a/install/includes/schema.sql +++ b/install/includes/schema.sql @@ -1,4 +1,4 @@ -SET @myaac_database_version = 32; +SET @myaac_database_version = 33; CREATE TABLE `myaac_account_actions` ( @@ -327,7 +327,7 @@ CREATE TABLE `myaac_spells` CREATE TABLE `myaac_visitors` ( - `ip` VARCHAR(16) NOT NULL, + `ip` VARCHAR(45) NOT NULL, `lastvisit` INT(11) NOT NULL DEFAULT 0, `page` VARCHAR(2048) NOT NULL, UNIQUE (`ip`) diff --git a/nginx-sample.conf b/nginx-sample.conf index f826d21d..f659c531 100644 --- a/nginx-sample.conf +++ b/nginx-sample.conf @@ -11,7 +11,7 @@ server { location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_read_timeout 240; - fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; + fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; } location ~ /\.ht { @@ -22,4 +22,4 @@ server { deny all; return 404; } -} +} \ No newline at end of file diff --git a/release.sh b/release.sh index 6bf99385..e720a3a9 100644 --- a/release.sh +++ b/release.sh @@ -13,7 +13,7 @@ fi if [ $1 = "prepare" ]; then # define release version - version=`cat VERSION` + version=`php system/get_version_for_release.php` echo "Preparing to release version $version of the MyAAC Project!" @@ -24,7 +24,7 @@ if [ $1 = "prepare" ]; then # get myaac from git archive git archive --format zip --output tmp/myaac.zip master - cd tmp/ + cd tmp/ || exit dir="myaac-$version" if [ -d "$dir" ] ; then @@ -41,9 +41,9 @@ fi if [ $1 = "pack" ]; then # define release version - version=`cat VERSION` + version=`php system/get_version_for_release.php` - cd tmp + cd tmp || exit # tar.gz echo "Creating .tar.gz package.." diff --git a/system/get_version_for_release.php b/system/get_version_for_release.php new file mode 100644 index 00000000..fa378dbb --- /dev/null +++ b/system/get_version_for_release.php @@ -0,0 +1,4 @@ +setManaSpent($char_to_copy->getManaSpent()); $player->setSoul($char_to_copy->getSoul()); - for($skill = POT::SKILL_FIRST; $skill <= POT::SKILL_LAST; $skill++) - $player->setSkill($skill, 10); + for($skill = POT::SKILL_FIRST; $skill <= POT::SKILL_LAST; $skill++) { + $value = 10; + if (config('use_character_sample_skills')) { + $value = $char_to_copy->getSkill($skill); + } + + $player->setSkill($skill, $value); + } $player->setLookBody($char_to_copy->getLookBody()); $player->setLookFeet($char_to_copy->getLookFeet()); @@ -234,16 +240,22 @@ class CreateCharacter if($db->hasTable('player_skills')) { for($i=0; $i<7; $i++) { + $value = 10; + if (config('use_character_sample_skills')) { + $value = $char_to_copy->getSkill($i); + } $skillExists = $db->query('SELECT `skillid` FROM `player_skills` WHERE `player_id` = ' . $player->getId() . ' AND `skillid` = ' . $i); if($skillExists->rowCount() <= 0) { - $db->query('INSERT INTO `player_skills` (`player_id`, `skillid`, `value`, `count`) VALUES ('.$player->getId().', '.$i.', 10, 0)'); + $db->query('INSERT INTO `player_skills` (`player_id`, `skillid`, `value`, `count`) VALUES ('.$player->getId().', '.$i.', ' . $value . ', 0)'); } } } $loaded_items_to_copy = $db->query("SELECT * FROM player_items WHERE player_id = ".$char_to_copy->getId().""); - foreach($loaded_items_to_copy as $save_item) - $db->query("INSERT INTO `player_items` (`player_id` ,`pid` ,`sid` ,`itemtype`, `count`, `attributes`) VALUES ('".$player->getId()."', '".$save_item['pid']."', '".$save_item['sid']."', '".$save_item['itemtype']."', '".$save_item['count']."', '".$save_item['attributes']."');"); + foreach($loaded_items_to_copy as $save_item) { + $blob = $db->quote($save_item['attributes']); + $db->query("INSERT INTO `player_items` (`player_id` ,`pid` ,`sid` ,`itemtype`, `count`, `attributes`) VALUES ('".$player->getId()."', '".$save_item['pid']."', '".$save_item['sid']."', '".$save_item['itemtype']."', '".$save_item['count']."', $blob);"); + } global $twig; $twig->display('success.html.twig', array( diff --git a/system/libs/pot/OTS_Player.php b/system/libs/pot/OTS_Player.php index a32bed8a..b5f48dc6 100644 --- a/system/libs/pot/OTS_Player.php +++ b/system/libs/pot/OTS_Player.php @@ -2489,7 +2489,7 @@ class OTS_Player extends OTS_Row_DAO $value = $this->db->query('SELECT ' . $this->db->fieldName('value') . ' FROM ' . $this->db->tableName('player_storage') . ' WHERE ' . $this->db->fieldName('key') . ' = ' . (int) $key . ' AND ' . $this->db->fieldName('player_id') . ' = ' . $this->data['id'])->fetch(); - if($value !== false) + if($value === false) { return null; } diff --git a/system/migrations/33.php b/system/migrations/33.php new file mode 100644 index 00000000..12fe4c2c --- /dev/null +++ b/system/migrations/33.php @@ -0,0 +1,6 @@ +exec('ALTER TABLE `' . TABLE_PREFIX . "visitors` MODIFY `ip` VARCHAR(45) NOT NULL;"); diff --git a/system/templates/rules.html.twig b/system/templates/rules.html.twig index 83e0103f..55490047 100644 --- a/system/templates/rules.html.twig +++ b/system/templates/rules.html.twig @@ -1,8 +1,2 @@ -{% if constant('PAGE') == 'rules' %} {{ config.lua.serverName }} Rules
- -{% endif %} +{{ getCustomPage('rules_on_the_page') | nl2br }}