Postado Junho 4, 2014 10 anos Tenho uma duvida eu crio a guild online e offline e o player nao entra na guild oque faço para resolver? fica sem player na guild
Postado Junho 4, 2014 10 anos STEP 4 Add samples to DB: Fatal error: Call to a member function fetch() on a non-object in C:\Program Files (x86)\VertrigoServ\www\classes\account.php on line 33 a baixo segue meu account.php if(!defined('INITIALIZED')) exit; class Account extends ObjectData { const LOADTYPE_ID = 'id'; const LOADTYPE_NAME = 'name'; const LOADTYPE_MAIL = 'email'; public static $table = 'accounts'; public $data = array('name' => null, 'password' => null, 'premdays' => null, 'lastday' => null, 'email' => null, 'key' => null, 'create_ip' => null, 'creation' => null, 'premium_points' => null, 'page_access' => null, 'location' => null, 'rlname' => null, 'email_new' => null, 'email_new_time' => null, 'email_code' => null, 'next_email' => null, 'last_post' => null, 'flag' => null); public static $fields = array('id', 'name', 'password', 'premdays', 'lastday', 'email', 'key', 'create_ip', 'creation', 'premium_points', 'page_access', 'location', 'rlname', 'email_new', 'email_new_time', 'email_code', 'next_email', 'last_post', 'flag'); public $players; public $playerRanks; public $guildAccess; public $bans; public function __construct($search_text = null, $search_by = self::LOADTYPE_ID) { if($search_text != null) $this->load($search_text, $search_by); } public function load($search_text, $search_by = self::LOADTYPE_ID) { if(in_array($search_by, self::$fields)) $search_string = $this->getDatabaseHandler()->fieldName($search_by) . ' = ' . $this->getDatabaseHandler()->quote($search_text); else new Error_Critic('', 'Wrong Account search_by type.'); $fieldsArray = array(); foreach(self::$fields as $fieldName) $fieldsArray[$fieldName] = $this->getDatabaseHandler()->fieldName($fieldName); $this->data = $this->getDatabaseHandler()->query('SELECT ' . implode(', ', $fieldsArray) . ' FROM ' . $this->getDatabaseHandler()->tableName(self::$table) . ' WHERE ' . $search_string)->fetch(); } public function loadById($id) { $this->load($id, 'id'); } public function loadByName($name) { $this->load($name, 'name'); } public function loadByEmail($mail) { $this->load($mail, 'email'); } public function save($forceInsert = false) { if(!isset($this->data['id']) || $forceInsert) { $keys = array(); $values = array(); foreach(self::$fields as $key) if($key != 'id') { $keys[] = $this->getDatabaseHandler()->fieldName($key); $values[] = $this->getDatabaseHandler()->quote($this->data[$key]); } $this->getDatabaseHandler()->query('INSERT INTO ' . $this->getDatabaseHandler()->tableName(self::$table) . ' (' . implode(', ', $keys) . ') VALUES (' . implode(', ', $values) . ')'); $this->setID($this->getDatabaseHandler()->lastInsertId()); } else { $updates = array(); foreach(self::$fields as $key) if($key != 'id') $updates[] = $this->getDatabaseHandler()->fieldName($key) . ' = ' . $this->getDatabaseHandler()->quote($this->data[$key]); $this->getDatabaseHandler()->query('UPDATE ' . $this->getDatabaseHandler()->tableName(self::$table) . ' SET ' . implode(', ', $updates) . ' WHERE ' . $this->getDatabaseHandler()->fieldName('id') . ' = ' . $this->getDatabaseHandler()->quote($this->data['id'])); } } public function getPlayers($forceReload = false) { if(!isset($this->players) || $forceReload) { $this->players = new DatabaseList('Player'); $this->players->setFilter(new SQL_Filter(new SQL_Field('account_id'), SQL_Filter::EQUAL, $this->getID())); $this->players->addOrder(new SQL_Order(new SQL_Field('name'))); } return $this->players; } /* public function getGuildRanks($forceReload = false) { if(!isset($this->playerRanks) || $forceReload) { $this->playerRanks = new DatabaseList('AccountGuildRank'); $filterAccount = new SQL_Filter(new SQL_Field('account_id', 'players'), SQL_Filter::EQUAL, $this->getID()); $filterPlayer1 = new SQL_Filter(new SQL_Field('id', 'players'), SQL_Filter::EQUAL, new SQL_Field('player_id', 'guild_membership')); $filterPlayer2 = new SQL_Filter(new SQL_Field('rank_id', 'guild_membership'), SQL_Filter::EQUAL, new SQL_Field('id', 'guild_ranks')); $filterGuild = new SQL_Filter(new SQL_Field('guild_id', 'guild_ranks'), SQL_Filter::EQUAL, new SQL_Field('id', 'guilds')); $filter = new SQL_Filter($filterAccount, SQL_Filter::CRITERIUM_AND, $filterPlayer1); $filter = new SQL_Filter($filter, SQL_Filter::CRITERIUM_AND, $filterPlayer2); $filter = new SQL_Filter($filter, SQL_Filter::CRITERIUM_AND, $filterGuild); $this->playerRanks->setFilter($filter); } return $this->playerRanks; } public function loadGuildAccess($forceReload = false) { if(!isset($this->guildAccess) || $forceReload) { $this->guildAccess = array(); foreach($this->getGuildRanks($forceReload) as $rank) if($rank->getOwnerID() == $rank->getPlayerID()) $this->guildAccess[$rank->getGuildID()] = Guild::LEVEL_OWNER; elseif(!isset($this->guildAccess[$rank->getGuildID()]) || $rank->getLevel() > $this->guildAccess[$rank->getGuildID()]) $this->guildAccess[$rank->getGuildID()] = $rank->getLevel(); } } public function isInGuild($guildId, $forceReload = false) { $this->loadGuildAccess($forceReload); return isset($this->guildAccess[$guildId]); } public function getGuildLevel($guildId, $forceReload = false) { $this->loadGuildAccess($forceReload); if(isset($this->guildAccess[$guildId])) return $this->guildAccess[$guildId]; else return 0; } */ public function unban() { $this->getDatabaseHandler()->query('DELETE FROM ' . $this->getDatabaseHandler()->tableName('account_bans') . ' WHERE ' . $this->getDatabaseHandler()->fieldName('account_id') . ' = ' . $this->getDatabaseHandler()->quote($this->data['id'])); unset($this->bans); } public function loadBans($forceReload = false) { if(!isset($this->bans) || $forceReload) { $this->bans = new DatabaseList('AccountBan'); $filter = new SQL_Filter(new SQL_Field('account_id'), SQL_Filter::EQUAL, $this->data['id']); $this->bans->setFilter($filter); } } public function isBanned($forceReload = false) { $this->loadBans($forceReload); return count($this->bans) > 0; } public function getBanTime($forceReload = false) { $this->loadBans($forceReload); $lastExpires = 0; foreach($bans as $ban) { if($ban->getExpiresAt() <= 0) { $lastExpires = 0; break; } if($ban->getExpiresAt() > time() && $ban->getExpiresAt() > $lastExpires) $lastExpires = $ban->getExpiresAt(); } return $lastExpires; } public function delete() { $this->getDatabaseHandler()->query('DELETE FROM ' . $this->getDatabaseHandler()->tableName(self::$table) . ' WHERE ' . $this->getDatabaseHandler()->fieldName('id') . ' = ' . $this->getDatabaseHandler()->quote($this->data['id'])); unset($this->data['id']); } public function setID($value){$this->data['id'] = $value;} public function getID(){return $this->data['id'];} public function setName($value){$this->data['name'] = $value;} public function getName(){return $this->data['name'];} public function setPassword($value) { $this->data['password'] = Website::encryptPassword($value, $this); } public function getPassword(){return $this->data['password'];} public function setPremDays($value){$this->data['premdays'] = $value;} public function getPremDays(){return $this->data['premdays'] - (date("z", time()) + (365 * (date("Y", time()) - date("Y", $this->data['lastday']))) - date("z", $this->data['lastday']));} public function setLastDay($value){$this->data['lastday'] = $value;} public function getLastDay(){return $this->data['lastday'];} public function setMail($value){$this->data['email'] = $value;} public function getMail(){return $this->data['email'];} public function setKey($value){$this->data['key'] = $value;} public function getKey(){return $this->data['key'];} /* * Custom AAC fields * create_ip , INT, default 0 * premium_points , INT, default 0 * page_access, INT, default 0 * location, VARCHAR(255), default '' * rlname, VARCHAR(255), default '' */ public function setCreateIP($value){$this->data['create_ip'] = $value;} public function getCreateIP(){return $this->data['create_ip'];} public function setCreateDate($value){$this->data['creation'] = $value;} public function getCreateDate(){return $this->data['creation'];} public function setPremiumPoints($value){$this->data['premium_points'] = $value;} public function getPremiumPoints(){return $this->data['premium_points'];} public function setPageAccess($value){$this->data['page_access'] = $value;} public function getPageAccess(){return $this->data['page_access'];} public function setLocation($value){$this->data['location'] = $value;} public function getLocation(){return $this->data['location'];} public function setRLName($value){$this->data['rlname'] = $value;} public function getRLName(){return $this->data['rlname'];} public function setFlag($value){$this->data['flag'] = $value;} public function getFlag(){return $this->data['flag'];} /* * for compability with old scripts */ public function getEMail(){return $this->getMail();} public function setEMail($value){$this->setMail($value);} public function getPlayersList(){return $this->getPlayers();} public function getGuildAccess($guildID){return $this->getGuildLevel($guildID);} public function isValidPassword($password) { return ($this->data['password'] == Website::encryptPassword($password, $this)); } public function find($name){$this->loadByName($name);} public function findByEmail($email){$this->loadByEmail($email);} public function isPremium(){return ($this->getPremDays() > 0);} public function getLastLogin(){return $this->getLastDay();} }
Postado Junho 4, 2014 10 anos Primeiramente vai no index e coloca true na opção da database que esta false, ai quando atualizar o site vai mostrar mensagem de erro, falando qual é a coluna na tabela accounts que esta faltando ...
Postado Junho 4, 2014 10 anos bom realmente estava em false, modifiquei para true mais o erro ainda continua o mesmo nao acusa mais nada.. a detalhe tbm acrecentei o comando no install.php e nao esta mostrando esta impacando com a msm msg no STEP 4... STEP 4 Add samples to DB:Fatal error: Call to a member function fetch() on a non-object in C:\Program Files (x86)\VertrigoServ\www\classes\account.php on line 33
Postado Junho 4, 2014 10 anos Você deve estar usando a database da versão inferior, tente essa. CREATE TABLE IF NOT EXISTS `accounts` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(32) NOT NULL, `password` char(40) NOT NULL, `type` int(11) NOT NULL DEFAULT '1', `premdays` int(11) NOT NULL DEFAULT '0', `lastday` int(10) unsigned NOT NULL DEFAULT '0', `email` varchar(255) NOT NULL DEFAULT '', `creation` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), UNIQUE KEY `name` (`name`) ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `players` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `group_id` int(11) NOT NULL DEFAULT '1', `account_id` int(11) NOT NULL DEFAULT '0', `level` int(11) NOT NULL DEFAULT '1', `vocation` int(11) NOT NULL DEFAULT '0', `health` int(11) NOT NULL DEFAULT '150', `healthmax` int(11) NOT NULL DEFAULT '150', `experience` bigint(20) NOT NULL DEFAULT '0', `lookbody` int(11) NOT NULL DEFAULT '0', `lookfeet` int(11) NOT NULL DEFAULT '0', `lookhead` int(11) NOT NULL DEFAULT '0', `looklegs` int(11) NOT NULL DEFAULT '0', `looktype` int(11) NOT NULL DEFAULT '136', `lookaddons` int(11) NOT NULL DEFAULT '0', `maglevel` int(11) NOT NULL DEFAULT '0', `mana` int(11) NOT NULL DEFAULT '0', `manamax` int(11) NOT NULL DEFAULT '0', `manaspent` int(11) unsigned NOT NULL DEFAULT '0', `soul` int(10) unsigned NOT NULL DEFAULT '0', `town_id` int(11) NOT NULL DEFAULT '0', `posx` int(11) NOT NULL DEFAULT '0', `posy` int(11) NOT NULL DEFAULT '0', `posz` int(11) NOT NULL DEFAULT '0', `conditions` blob NOT NULL, `cap` int(11) NOT NULL DEFAULT '0', `sex` int(11) NOT NULL DEFAULT '0', `lastlogin` bigint(20) unsigned NOT NULL DEFAULT '0', `lastip` int(10) unsigned NOT NULL DEFAULT '0', `save` tinyint(1) NOT NULL DEFAULT '1', `skull` tinyint(1) NOT NULL DEFAULT '0', `skulltime` int(11) NOT NULL DEFAULT '0', `lastlogout` bigint(20) unsigned NOT NULL DEFAULT '0', `blessings` tinyint(2) NOT NULL DEFAULT '0', `onlinetime` int(11) NOT NULL DEFAULT '0', `deletion` bigint(15) NOT NULL DEFAULT '0', `balance` bigint(20) unsigned NOT NULL DEFAULT '0', `offlinetraining_time` smallint(5) unsigned NOT NULL DEFAULT '43200', `offlinetraining_skill` int(11) NOT NULL DEFAULT '-1', `stamina` smallint(5) unsigned NOT NULL DEFAULT '2520', `skill_fist` int(10) unsigned NOT NULL DEFAULT 10, `skill_fist_tries` bigint(20) unsigned NOT NULL DEFAULT 0, `skill_club` int(10) unsigned NOT NULL DEFAULT 10, `skill_club_tries` bigint(20) unsigned NOT NULL DEFAULT 0, `skill_sword` int(10) unsigned NOT NULL DEFAULT 10, `skill_sword_tries` bigint(20) unsigned NOT NULL DEFAULT 0, `skill_axe` int(10) unsigned NOT NULL DEFAULT 10, `skill_axe_tries` bigint(20) unsigned NOT NULL DEFAULT 0, `skill_dist` int(10) unsigned NOT NULL DEFAULT 10, `skill_dist_tries` bigint(20) unsigned NOT NULL DEFAULT 0, `skill_shielding` int(10) unsigned NOT NULL DEFAULT 10, `skill_shielding_tries` bigint(20) unsigned NOT NULL DEFAULT 0, `skill_fishing` int(10) unsigned NOT NULL DEFAULT 10, `skill_fishing_tries` bigint(20) unsigned NOT NULL DEFAULT 0, PRIMARY KEY (`id`), UNIQUE KEY `name` (`name`), FOREIGN KEY (`account_id`) REFERENCES `accounts` (`id`) ON DELETE CASCADE, KEY `vocation` (`vocation`) ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `account_bans` ( `account_id` int(11) NOT NULL, `reason` varchar(255) NOT NULL, `banned_at` bigint(20) NOT NULL, `expires_at` bigint(20) NOT NULL, `banned_by` int(11) NOT NULL, PRIMARY KEY (`account_id`), FOREIGN KEY (`account_id`) REFERENCES `accounts` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (`banned_by`) REFERENCES `players` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `account_ban_history` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `account_id` int(11) NOT NULL, `reason` varchar(255) NOT NULL, `banned_at` bigint(20) NOT NULL, `expired_at` bigint(20) NOT NULL, `banned_by` int(11) NOT NULL, PRIMARY KEY (`id`), FOREIGN KEY (`account_id`) REFERENCES `accounts` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (`banned_by`) REFERENCES `players` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `ip_bans` ( `ip` int(10) unsigned NOT NULL, `reason` varchar(255) NOT NULL, `banned_at` bigint(20) NOT NULL, `expires_at` bigint(20) NOT NULL, `banned_by` int(11) NOT NULL, PRIMARY KEY (`ip`), FOREIGN KEY (`banned_by`) REFERENCES `players` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `player_namelocks` ( `player_id` int(11) NOT NULL, `reason` varchar(255) NOT NULL, `namelocked_at` bigint(20) NOT NULL, `namelocked_by` int(11) NOT NULL, PRIMARY KEY (`player_id`), FOREIGN KEY (`player_id`) REFERENCES `players` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (`namelocked_by`) REFERENCES `players` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `account_viplist` ( `account_id` int(11) NOT NULL COMMENT 'id of account whose viplist entry it is', `player_id` int(11) NOT NULL COMMENT 'id of target player of viplist entry', `description` varchar(128) NOT NULL DEFAULT '', `icon` tinyint(2) unsigned NOT NULL DEFAULT '0', `notify` tinyint(1) NOT NULL DEFAULT '0', UNIQUE KEY `account_player_index` (`account_id`,`player_id`), FOREIGN KEY (`account_id`) REFERENCES `accounts` (`id`) ON DELETE CASCADE, FOREIGN KEY (`player_id`) REFERENCES `players` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `guilds` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `ownerid` int(11) NOT NULL, `creationdata` int(11) NOT NULL, `motd` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`id`), UNIQUE KEY (`name`), UNIQUE KEY (`ownerid`), FOREIGN KEY (`ownerid`) REFERENCES `players`(`id`) ON DELETE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `guild_invites` ( `player_id` int(11) NOT NULL DEFAULT '0', `guild_id` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`player_id`,`guild_id`), FOREIGN KEY (`player_id`) REFERENCES `players` (`id`) ON DELETE CASCADE, FOREIGN KEY (`guild_id`) REFERENCES `guilds` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `guild_ranks` ( `id` int(11) NOT NULL AUTO_INCREMENT, `guild_id` int(11) NOT NULL COMMENT 'guild', `name` varchar(255) NOT NULL COMMENT 'rank name', `level` int(11) NOT NULL COMMENT 'rank level - leader, vice, member, maybe something else', PRIMARY KEY (`id`), FOREIGN KEY (`guild_id`) REFERENCES `guilds` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `guild_membership` ( `player_id` int(11) NOT NULL, `guild_id` int(11) NOT NULL, `rank_id` int(11) NOT NULL, `nick` varchar(15) NOT NULL DEFAULT '', PRIMARY KEY (`player_id`), FOREIGN KEY (`player_id`) REFERENCES `players` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (`guild_id`) REFERENCES `guilds` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (`rank_id`) REFERENCES `guild_ranks` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `guild_wars` ( `id` int(11) NOT NULL AUTO_INCREMENT, `guild1` int(11) NOT NULL DEFAULT '0', `guild2` int(11) NOT NULL DEFAULT '0', `name1` varchar(255) NOT NULL, `name2` varchar(255) NOT NULL, `status` tinyint(2) NOT NULL DEFAULT '0', `started` bigint(15) NOT NULL DEFAULT '0', `ended` bigint(15) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `guild1` (`guild1`), KEY `guild2` (`guild2`) ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `guildwar_kills` ( `id` int(11) NOT NULL AUTO_INCREMENT, `killer` varchar(50) NOT NULL, `target` varchar(50) NOT NULL, `killerguild` int(11) NOT NULL DEFAULT '0', `targetguild` int(11) NOT NULL DEFAULT '0', `warid` int(11) NOT NULL DEFAULT '0', `time` bigint(15) NOT NULL, PRIMARY KEY (`id`), FOREIGN KEY (`warid`) REFERENCES `guild_wars` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `houses` ( `id` int(11) NOT NULL AUTO_INCREMENT, `owner` int(11) NOT NULL, `paid` int(10) unsigned NOT NULL DEFAULT '0', `warnings` int(11) NOT NULL DEFAULT '0', `name` varchar(255) NOT NULL, `rent` int(11) NOT NULL DEFAULT '0', `town_id` int(11) NOT NULL DEFAULT '0', `bid` int(11) NOT NULL DEFAULT '0', `bid_end` int(11) NOT NULL DEFAULT '0', `last_bid` int(11) NOT NULL DEFAULT '0', `highest_bidder` int(11) NOT NULL DEFAULT '0', `size` int(11) NOT NULL DEFAULT '0', `beds` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `owner` (`owner`), KEY `town_id` (`town_id`) ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `house_lists` ( `house_id` int(11) NOT NULL, `listid` int(11) NOT NULL, `list` text NOT NULL, FOREIGN KEY (`house_id`) REFERENCES `houses` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `market_history` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `player_id` int(11) NOT NULL, `sale` tinyint(1) NOT NULL DEFAULT '0', `itemtype` int(10) unsigned NOT NULL, `amount` smallint(5) unsigned NOT NULL, `price` int(10) unsigned NOT NULL DEFAULT '0', `expires_at` bigint(20) unsigned NOT NULL, `inserted` bigint(20) unsigned NOT NULL, `state` tinyint(1) unsigned NOT NULL, PRIMARY KEY (`id`), KEY `player_id` (`player_id`, `sale`), FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `market_offers` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `player_id` int(11) NOT NULL, `sale` tinyint(1) NOT NULL DEFAULT '0', `itemtype` int(10) unsigned NOT NULL, `amount` smallint(5) unsigned NOT NULL, `created` bigint(20) unsigned NOT NULL, `anonymous` tinyint(1) NOT NULL DEFAULT '0', `price` int(10) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `sale` (`sale`,`itemtype`), KEY `created` (`created`), FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `players_online` ( `player_id` int(11) NOT NULL, PRIMARY KEY (`player_id`) ) ENGINE=MEMORY; CREATE TABLE IF NOT EXISTS `player_deaths` ( `player_id` int(11) NOT NULL, `time` bigint(20) unsigned NOT NULL DEFAULT '0', `level` int(11) NOT NULL DEFAULT '1', `killed_by` varchar(255) NOT NULL, `is_player` tinyint(1) NOT NULL DEFAULT '1', `mostdamage_by` varchar(100) NOT NULL, `mostdamage_is_player` tinyint(1) NOT NULL DEFAULT '0', `unjustified` tinyint(1) NOT NULL DEFAULT '0', `mostdamage_unjustified` tinyint(1) NOT NULL DEFAULT '0', FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE, KEY `killed_by` (`killed_by`), KEY `mostdamage_by` (`mostdamage_by`) ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `player_depotitems` ( `player_id` int(11) NOT NULL, `sid` int(11) NOT NULL COMMENT 'any given range eg 0-100 will be reserved for depot lockers and all > 100 will be then normal items inside depots', `pid` int(11) NOT NULL DEFAULT '0', `itemtype` smallint(6) NOT NULL, `count` smallint(5) NOT NULL DEFAULT '0', `attributes` blob NOT NULL, UNIQUE KEY `player_id_2` (`player_id`, `sid`), FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `player_inboxitems` ( `player_id` int(11) NOT NULL, `sid` int(11) NOT NULL, `pid` int(11) NOT NULL DEFAULT '0', `itemtype` smallint(6) NOT NULL, `count` smallint(5) NOT NULL DEFAULT '0', `attributes` blob NOT NULL, UNIQUE KEY `player_id_2` (`player_id`, `sid`), FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `player_items` ( `player_id` int(11) NOT NULL DEFAULT '0', `pid` int(11) NOT NULL DEFAULT '0', `sid` int(11) NOT NULL DEFAULT '0', `itemtype` smallint(6) NOT NULL DEFAULT '0', `count` smallint(5) NOT NULL DEFAULT '0', `attributes` blob NOT NULL, FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE, KEY `sid` (`sid`) ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `player_spells` ( `player_id` int(11) NOT NULL, `name` varchar(255) NOT NULL, FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `player_storage` ( `player_id` int(11) NOT NULL DEFAULT '0', `key` int(10) unsigned NOT NULL DEFAULT '0', `value` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`player_id`,`key`), FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE ) ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `server_config` ( `config` varchar(50) NOT NULL, `value` varchar(256) NOT NULL DEFAULT '', PRIMARY KEY `config` (`config`) ) ENGINE=InnoDB; INSERT INTO `server_config` (`config`, `value`) VALUES ('db_version', '18'), ('motd_hash', ''), ('motd_num', '0'), ('players_record', '0'); CREATE TABLE IF NOT EXISTS `tile_store` ( `house_id` int(11) NOT NULL, `data` longblob NOT NULL, FOREIGN KEY (`house_id`) REFERENCES `houses` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB; DROP TRIGGER IF EXISTS `ondelete_players`; DROP TRIGGER IF EXISTS `oncreate_guilds`; DELIMITER // CREATE TRIGGER `ondelete_players` BEFORE DELETE ON `players` FOR EACH ROW BEGIN UPDATE `houses` SET `owner` = 0 WHERE `owner` = OLD.`id`; END // CREATE TRIGGER `oncreate_guilds` AFTER INSERT ON `guilds` FOR EACH ROW BEGIN INSERT INTO `guild_ranks` (`name`, `level`, `guild_id`) VALUES ('the Leader', 3, NEW.`id`); INSERT INTO `guild_ranks` (`name`, `level`, `guild_id`) VALUES ('a Vice-Leader', 2, NEW.`id`); INSERT INTO `guild_ranks` (`name`, `level`, `guild_id`) VALUES ('a Member', 1, NEW.`id`); END // DELIMITER ;
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.