Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- session_start();
- require_once("conf/config.php");
- require_once("commons/sql.php");
- require_once("commons/logs.php");
- class aion
- {
- var $log;
- public function aion()
- {
- $this->log=new logs();
- }
- private function crypt_pass($password)
- {
- $cpass = trim($password);
- $cpass = sha1($cpass, true);
- $cpass = base64_encode($cpass);
- return ($cpass);
- }
- public function isWebLoged()
- {
- global $_CONF;
- if( (!isset($_SESSION['uid'])) || (!isset($_SESSION["ultimo_acceso"])) || $_SESSION['uid']==0 )
- {
- $_SESSION['uid']=0;
- $_SESSION["ultimo_acceso"]= date("Y-n-j H:i:s");
- return false;
- }
- else
- {
- $tiempo_transcurrido = (strtotime(date("Y-n-j H:i:s"))-strtotime($_SESSION["ultimo_acceso"]));
- if($tiempo_transcurrido >= ($_CONF['max_time_session']*60))
- {
- session_destroy();
- $_SESSION['uid']=0;
- $_SESSION["ultimo_acceso"]= date("Y-n-j H:i:s");
- return false;
- }
- else
- {
- $_SESSION["ultimo_acceso"]= date("Y-n-j H:i:s");
- return true;
- }
- }
- }
- public function ValideAccount($account, $password)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_login'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $user=$sql_con->anti_inyection($account);
- $pass=$sql_con->anti_inyection($password);
- $query="select * from account_data where name='" . $user . "' and password='" . $this->crypt_pass($pass) . "'";
- if(($sql_con->query($query, $rows, $num_rows)) && ($num_rows==1))
- {
- $_SESSION['uid']=$rows[0]['id'];
- $_SESSION['uname']=$rows[0]['name'];
- $_SESSION['uaccess_level']=$rows[0]['access_level'];
- if($_CONF['enable_logs']=="on") $this->log->addlog("[LOGIN] login_nombre=[" . $user . "], ValideAccount_query=[" . $query . "]", "account");
- return true;
- }
- else
- {
- if($_CONF['enable_logs']=="on") $this->log->addlog("[NOLOGIN] login_nombre=[" . $user . "], ValideAccount_query=[" . $query . "]", "account");
- return false;
- }
- }
- public function existAccountName($account)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_login'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $user=$sql_con->anti_inyection($account);
- $query="select * from account_data where name='" . $user . "'";
- if(($sql_con->query($query, $rows, $num_rows)) && ($num_rows==1))
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- public function existAccountMail($mail)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_login'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $user=$sql_con->anti_inyection($mail);
- $query="select * from account_data where mail='" . $mail . "'";
- if(($sql_con->query($query, $rows, $num_rows)) && ($num_rows==1))
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- public function accountRegister($accountname, $password, $email)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_login'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $account_name=$sql_con->anti_inyection($accountname);
- $pass=$sql_con->anti_inyection($password);
- $mail=$sql_con->anti_inyection($email);
- if($this->ValideMail($mail))
- {
- $query="INSERT INTO account_data (name, password, activated, access_level, mail, last_server, last_ip) VALUES ('" . $account_name . "','" . $this->crypt_pass($pass) . "',1,0,'" . $mail . "', 1,'" . getenv("REMOTE_ADDR") . "')";
- if($sql_con->execute($query))
- {
- if($_CONF['enable_logs']=="on") $this->log->addlog("[ACCOUNTREGISTER] account_name=[" . $account_name . "], mail=[" . $mail . "], accountRegister_query=[" . $query . "]", "account");
- return true;
- }
- else
- {
- if($_CONF['enable_logs']=="on") $this->log->addlog("[NOACCOUNTREGISTER] account_name=[" . $account_name . "], mail=[" . $mail . "], SetPlayerPosition_query=[" . $query . "]", "account");
- return false;
- }
- }
- else
- {
- if($_CONF['enable_logs']=="on") $this->log->addlog("[NOACCOUNTREGISTER-MAILINCORRECT] account_name=[" . $account_name . "], mail=[" . $mail . "]", "account");
- return false;
- }
- }
- function ValideMail($pMail)
- {
- if (preg_match("/^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@+([_a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]{2,200}\.[a-zA-Z]{2,6}$/", $pMail ) )
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- public function logout()
- {
- unset($_SESSION['uid']);
- unset($_SESSION["ultimo_acceso"]);
- unset($_SESSION['uname']);
- unset($_SESSION['uaccesslevel']);
- session_destroy();
- }
- public function UpdatePassword($pass, $newpass)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$this->isWebLoged()) return false;
- else
- {
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_login'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $user_id=$this->getAccountId();
- $pass=$sql_con->anti_inyection($pass);
- $new_pass=$sql_con->anti_inyection($newpass);
- $query="select * from account_data where id='" . $user_id . "' and password='" . $this->crypt_pass($pass) . "'";
- if(($sql_con->query($query, $rows, $num_rows)) && ($num_rows==1))
- {
- $query="update account_data set password='" . $this->crypt_pass($new_pass) . "' where id=" . $user_id . " and password='" . $this->crypt_pass($pass) . "'";
- if($sql_con->execute($query))
- {
- if($_CONF['enable_logs']=="on") $this->log->addlog("[PASSWORD-UPDATED] login_id=[" . $user_id . "], UpdatePassword_query=[" . $query . "]", "account");
- return true;
- }
- else
- {
- if($_CONF['enable_logs']=="on") $this->log->addlog("[NO-PASSWORD-UPDATED] login_id=[" . $user_id . "], UpdatePassword_query=[" . $query . "]", "account");
- return false;
- }
- }
- else
- {
- if($_CONF['enable_logs']=="on") $this->log->addlog("[INVALID_LOGIN] login_id=[" . $user_id . "], UpdatePassword_query=[" . $query . "]", "account");
- return false;
- }
- }
- }
- public function getAccountId()
- {
- if($this->isWebLoged()) return ($_SESSION['uid']);
- else return (0);
- }
- public function getAccountName()
- {
- if($this->isWebLoged()) return $_SESSION['uname'];
- else return "anonimo";
- }
- public function isPlayerthisAccount($playerId)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_id=$sql_con->anti_inyection($playerId);
- $query="select * from players where account_id=" . $this->getAccountId() . " and id=" . $player_id;
- if(($sql_con->query($query, $rows, $num_rows)) && ($num_rows==1))
- {
- return (true);
- }
- else
- {
- return (false);
- }
- }
- public function getPlayers($account_Id, &$rows, &$num_rows)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $accountId=$sql_con->anti_inyection($account_Id);
- $query="select * from players where account_id=" . $accountId;
- return $sql_con->query($query, $rows, $num_rows);
- }
- public function getPlayerActiveSkills($playerId, &$rows, &$num_rows)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_id=$sql_con->anti_inyection($playerId);
- $query="SELECT player_skills.player_id, players.name as player_name, player_skills.skillId, player_skills.skillLevel, web_skill_tree.minLevel, web_skill_tree.name as skill_name,
- (CASE web_skill_tree.autolearn
- WHEN 'true' THEN 'auto'
- ELSE 'book'
- END) as type
- FROM player_skills
- LEFT JOIN web_skill_tree ON web_skill_tree.skillId= player_skills.skillId
- LEFT JOIN players ON players.id=player_skills.player_id
- WHERE player_skills.player_id=" . $player_id . " and web_skill_tree.skillId is not null and web_skill_tree.type='ACTIVE'
- GROUP BY web_skill_tree.name, player_skills.skillId, player_skills.skillLevel
- ORDER BY web_skill_tree.type, web_skill_tree.name, player_skills.skillLevel";
- return $sql_con->query($query, $rows, $num_rows);
- }
- public function getPlayerPasiveSkills($playerId, &$rows, &$num_rows)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_id=$sql_con->anti_inyection($playerId);
- $query="SELECT player_skills.player_id, players.name as player_name, player_skills.skillId, player_skills.skillLevel, web_skill_tree.minLevel, web_skill_tree.name as skill_name,
- (CASE web_skill_tree.autolearn
- WHEN 'true' THEN 'auto'
- ELSE 'book'
- END) as type
- FROM player_skills
- LEFT JOIN web_skill_tree ON web_skill_tree.skillId= player_skills.skillId
- LEFT JOIN players ON players.id=player_skills.player_id
- WHERE player_skills.player_id=" . $player_id . " and web_skill_tree.skillId is not null and web_skill_tree.type='PASSIVE'
- GROUP BY web_skill_tree.name, player_skills.skillId, player_skills.skillLevel
- ORDER BY web_skill_tree.type, web_skill_tree.name, player_skills.skillLevel";
- return $sql_con->query($query, $rows, $num_rows);
- }
- public function getEquipedItems($playerId, &$rows, &$num_rows)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_id=$sql_con->anti_inyection($playerId);
- $query="SELECT * FROM inventory LEFT JOIN web_itemlist on web_itemlist.item_id=inventory.itemId WHERE inventory.isEquiped=1 and inventory.itemLocation=0 and inventory.itemOwner=" . $player_id;
- return $sql_con->query($query, $rows, $num_rows);
- }
- public function getNoEquipedItems($playerId, &$rows, &$num_rows)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_id=$sql_con->anti_inyection($playerId);
- $query="SELECT * FROM inventory LEFT JOIN web_itemlist on web_itemlist.item_id=inventory.itemId WHERE inventory.isEquiped=0 and inventory.itemLocation=0 and inventory.itemOwner=" . $player_id;
- return $sql_con->query($query, $rows, $num_rows);
- }
- public function getWarehouseItems($playerId, &$rows, &$num_rows)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_id=$sql_con->anti_inyection($playerId);
- $query="SELECT * FROM inventory LEFT JOIN web_itemlist on web_itemlist.item_id=inventory.itemId WHERE inventory.itemLocation=1 and inventory.itemOwner=" . $player_id;
- return $sql_con->query($query, $rows, $num_rows);
- }
- public function SetPlayerPosition($playerId, $x, $y, $z, $world)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_id=$sql_con->anti_inyection($playerId);
- $query="update players set x=" . $x . ", y=" . $y . ", z=" . $z . ", world_id=" . $world . " where id=" . $player_id;
- if($sql_con->execute($query))
- {
- if($_CONF['enable_logs']=="on") $this->log->addlog("[SETPOSITION] player_id=[" . $player_id . "], SetPlayerPosition_query=[" . $query . "]", "players");
- return true;
- }
- else
- {
- if($_CONF['enable_logs']=="on") $this->log->addlog("[NOSETPOSITION] player_id=[" . $player_id . "], SetPlayerPosition_query=[" . $query . "]", "players");
- return false;
- }
- }
- public function isPlayerInGame($playerId)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_id=$sql_con->anti_inyection($playerId);
- $query="select * from players where id=" . $player_id;
- if(($sql_con->query($query, $rows, $num_rows)) && ($num_rows==1))
- {
- if($rows[0]['online']==0)
- {
- return false;
- }
- else
- {
- return true;
- }
- }
- else
- {
- return true;
- }
- }
- public function getPlayerId($playerName)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_name=$sql_con->anti_inyection($playerName);
- $query="select * from players where name='" . $player_name . "'";
- if(($sql_con->query($query, $rows, $num_rows)) && ($num_rows==1))
- {
- return ($rows[0]['id']);
- }
- else
- {
- return (0);
- }
- }
- public function getPlayerName($playerId)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_id=$sql_con->anti_inyection($playerId);
- $query="select * from players where id=" . $player_id;
- if(($sql_con->query($query, $rows, $num_rows)) && ($num_rows==1))
- {
- return ($rows[0]['name']);
- }
- else
- {
- return ("NULL");
- }
- }
- public function getPlayerLevel($playerId)
- {
- global $_CONF;
- $sql_con=new sql();
- $level=1;
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_id=$sql_con->anti_inyection($playerId);
- $query="select * from players where id=" . $player_id;
- if(($sql_con->query($query, $rows, $num_rows)) && ($num_rows==1))
- {
- for($i=0; $i<($_CONF['max_level_up']+1); $i++)
- {
- if($rows[0]['exp']<=$_CONF['exp_level_up'][$i])
- {
- $level=$i;
- break;
- }
- }
- }
- if($level<1) $level=1;
- if($i>=$_CONF['max_level_up']) $level=$_CONF['max_level_up'];
- if($level>$_CONF['max_level_up']) $level=$_CONF['max_level_up'];
- return $level;
- }
- public function getPlayerRace($playerId)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_id=$sql_con->anti_inyection($playerId);
- $query="select * from players where id=" . $player_id;
- if(($sql_con->query($query, $rows, $num_rows)) && ($num_rows==1))
- {
- return ($rows[0]['race']);
- }
- else
- {
- return ("");
- }
- }
- public function getPlayerClass($playerId)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_id=$sql_con->anti_inyection($playerId);
- $query="select * from players where id=" . $player_id;
- if(($sql_con->query($query, $rows, $num_rows)) && ($num_rows==1))
- {
- return ($rows[0]['player_class']);
- }
- else
- {
- return ("");
- }
- }
- public function isStartingClass($playerClass)
- {
- $player_class=$sql_con->anti_inyection($playerClass);
- if($player_class=="SCOUT" || $player_class=="WARRIOR" || $player_class=="PRIEST" || $player_class=="MAGE")
- {
- return (true);
- }
- else
- {
- return (false);
- }
- }
- public function getStartingClass($playerClass)
- {
- $player_class=$sql_con->anti_inyection($playerClass);
- switch ($player_class)
- {
- case "ASSASSIN": $start_class="SCOUT";
- break;
- case "RANGER": $start_class="SCOUT";
- break;
- case "GLADIATOR": $start_class="WARRIOR";
- break;
- case "TEMPLAR": $start_class="WARRIOR";
- break;
- case "CHANTER": $start_class="PRIEST";
- break;
- case "CLERIC": $start_class="PRIEST";
- break;
- case "SORCERER": $start_class="MAGE";
- break;
- case "MAGE": $start_class="MAGE";
- break;
- default: $start_class=$player_class;
- }
- return ($start_class);
- }
- public function deletePlayerQuest($playerId, $questId)
- {
- global $_CONF;
- $sql_con=new sql();
- if(!$sql_con->connection($_CONF['db_uname'], $_CONF['db_pass'], $_CONF['db_name_game'], $_CONF['db_host'])) echo "<center>ERROR: SIN CONEXI�N CON LA BASE DE DATOS<BR>CONSULTE CON EL ADMINISTRADOR DEL SISTEMA<center>", exit(-1);
- $player_Id=$sql_con->anti_inyection($playerId);
- $quest_Id=$sql_con->anti_inyection($questId);
- $query="DELETE FROM player_quests WHERE player_id=" . $player_Id . " AND quest_id=" . $quest_Id;
- if($sql_con->execute($query))
- {
- if($_CONF['enable_logs']=="on") $this->log->addlog("[DELETEQUEST] player_id=[" . $player_Id . "], deletePlayerQuest_query=[" . $query . "]", "players");
- return true;
- }
- else
- {
- if($_CONF['enable_logs']=="on") $this->log->addlog("[NODELETEQUEST] player_id=[" . $player_Id . "], deletePlayerQuest_query=[" . $query . "]", "players");
- return false;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement