@xsrf
It's easy convert web to other games or is too dependent to FlyFF?
It's easy convert web to other games or is too dependent to FlyFF?
return $player['Result'][1]['m_szName'];
Yes, it's possible.Quote:
Is there anyway in which you can remove the PaySafeCard payment option and insert a PayPal form instead?
Wanted to know if its possible or not, I should be able to implement it myself but thought I would ask first before trying in case I ruin what I have done so far.
Also how do I go about getting the server 'online/offline' to work correctly? It states its offline all the time yet my server has not been down for over 2 weeks.
cheers
Josh
private function PingServerChannel($port, $ip){
if(@fsockopen($ip, $port, $errno, $errstr, 0.15) >= 0.15) {
return true;
}
else {
return false;
}
}
private function PingServerChannel($ip, $port){
if(@fsockopen($ip, $port, $errno, $errstr, 0.45) >= 0.45) {
return true;
}
else {
return false;
}
}
private function CraftPlayerID($playerID){
$responseLength = 7;
$valueLength = strlen($playerID);
$valueLengthExtension = null;
for($i = 1;$i <= $responseLength-$valueLength;$i++){
$valueLengthExtension .= 0;
};
$mPlayerID = $valueLengthExtension.$playerID;
$player = self::Select(array('m_szName'), 'Character', 'CHARACTER_TBL', array('m_idPlayer' => $mPlayerID), null, 'TOP 1 ');
return $player;
}
private function GetServerLord(){
$lord = self::Select(array('idElection', 'idLord'), 'Character', 'tblLord', null, ' ORDER BY [idElection] DESC', 'TOP 1');
if($lord['Rows'] > 0){
$lord = $lord['Result'][1]['idLord'];
$player = self::CraftPlayerID($lord);
$player['Rows'] != null ? $player = $player['Result'][1]['m_szName'] : $player = null;
return $player;
}else {
return 'None';
}
}
public function SetVoteCoins()
{
global $cfg;
$vote = self::Select(array('vcoins', 'lastvote'), 'Website', 'WebAccount', array('username' => $_SESSION['user']));
$last = $vote['Result'][1]['lastvote'];
$coins = (int)$vote['Result'][1]['vcoins'];
if($last == NULL || $last <= time()){
$nextvote = time()+1*(int)$cfg['set_vote_pause']*60*60;
$newcoins = $coins + (int)$cfg['set_vote_coins'];
self::Update(array('vcoins' => $newcoins), array('username' => $_SESSION['user']), 'Website', 'WebAccount');
self::Update(array('lastvote' => $nextvote), array('username' => $_SESSION['user']), 'Website', 'WebAccount');
return array('success', 'Vote success. Please refresh your panel to see your vote coins.');
}else {
return array('danger', 'Can not vote now. New vote at: ' . date('d.m.Y h:i:s a'));
}
}
<?php
class Ranking extends Database {
/* Player Ranking Functions */
public static function GetClassIcon($classID) {
$class = Flyff::GetClassName($classID);
if(!$class[1]){
$class = $class[0];
}else {
$class = $class[0] . ' ' . $class[1];;
}
return $class;
}
public static function GetClassName($classID) {
$class = Flyff::GetClassName($classID);
$class = $class[0];
return $class;
}
public function GetPlayerList($limit) {
$get = self::Select(array('m_szName', 'm_nJob', 'm_nLevel', 'TotalPlayTime'), 'Character', 'CHARACTER_TBL', array('m_chAuthority' => 'F', 'isblock' => 'F'), ' ORDER BY [m_nLevel] DESC, [m_nJob] DESC, [TotalPlayTime] DESC', 'TOP '.$limit.' ', 0 , array('=', '='));
if($get['Rows'] > 0){
$get['bool'] = true;
return $get;
}else {
$get['bool'] = false;
return array('danger', 'There are no ranked players yet.');
}
}
public function SelectGuildIDByPlayer($player){
$guildID = self::Select(array('m_idGuild'), 'Character', 'GUILD_MEMBER_TBL', array('m_idPlayer' => $player), null);
if($guildID['Rows'] > 0){
$guildID = $guildID['Result'][1]['m_idGuild'];
}else {
$guildID = 'Guildless';
}
return $guildID;
}
private function SelectGuildNameByGuildID($guildID){
$guildName = $guildID;
if($guildName !== 'Guildless'){
$guildName = self::Select(array('m_szGuild'), 'Character', 'GUILD_TBL', array('m_idGuild' => $guildID), null);
$guildName = $guildName['Result'][1]['m_szGuild'];
}
return $guildName;
}
private function SetMultiserverView($multiserver){
if($multiserver === '1'){
return 'Online';
}else {
return 'Offline';
}
}
public function GetPlayerRanking($limit){
if(gettype($limit) === 'integer'){
$player = self::Select(array('m_idPlayer', 'm_szName', 'm_nJob', 'm_nLevel', 'TotalPlayTime', 'Multiserver'), 'Character', 'CHARACTER_TBL', array('m_chAuthority' => 'F', 'isblock' => 'F'), ' ORDER BY [m_nLevel] DESC, [m_nJob] DESC, [TotalPlayTime] DESC', 'TOP '.$limit.' ', 0, array('=', '='));
$rows = $player['Rows'];
if($rows > 0){
$player = $player['Result'];
for($i = 1;$i <= $rows;$i++){
$player[$i]['m_szGuild'] = self::SelectGuildNameByGuildID(self::SelectGuildIDByPlayer($player[$i]['m_idPlayer']));
$player[$i]['Multiserver'] = self::SetMultiserverView($player[$i]['Multiserver'] );
}
$player['bool'] = true;
return $player;
}else {
return array('danger', 'Actually we have no registered players.', 'bool' => false, );
}
}else {
return array('danger', 'Please stop forging the values.', 'bool' => false, );
}
}
/* Guild Ranking Functions */
private function CheckGuildMemberAuthority($guildID){
$response = 1;
$playerID = self::Select(array('m_idPlayer'), 'Character', 'GUILD_MEMBER_TBL', array('m_idGuild' => $guildID));
$authority = array();
for($i = 1;$i <= $playerID['Rows'];$i++){
$authority[$i] = self::Select(array('m_chAuthority'), 'Character', 'CHARACTER_TBL', array('m_idPlayer' => $playerID['Result'][$i]['m_idPlayer']));
if($authority[$i]['Result'][1]['m_chAuthority'] !== 'F'){
$response = 0;
}
}
return $response;
}
private function SelectLeaderNameByGuildID($leaderID){
$leaderName = self::Select(array('m_szName'), 'Character', 'CHARACTER_TBL', array('m_idPlayer' => $leaderID), null, 'TOP 1 ');
return $leaderName['Result'][1]['m_szName'];
}
private function BetterGuildCreateFormat($creationDate, $monthList){
$creationDate = substr($creationDate, 0, strlen($creationDate)-12);
$creationDate = explode('-', $creationDate);
$creationDate[1] = $monthList[$creationDate[1]-1];
$creationDate = $creationDate[1] . ', ' . $creationDate[0];
return $creationDate;
}
private function GetGuildMemberAmount($guildID){
$amount = self::Select(array('m_idPlayer'), 'Character', 'GUILD_MEMBER_TBL', array('m_idGuild' => $guildID));
return $amount['Rows'];
}
private function GetGuildLeader($guildID){
$leader = self::Select(array('m_idPlayer', 'm_nMemberLv'), 'Character', 'GUILD_MEMBER_TBL', array('m_idGuild' => $guildID), ' ORDER by [m_nMemberLv]', 'TOP 1 ');
$leader = self::SelectLeaderNameByGuildID($leader['Result'][1]['m_idPlayer']);
return $leader;
}
//in relation to slot amount + farbcodes
private function SplitSlotValues($slots, $amount){
$unit = $slots / 4;
if($amount <= $unit){
return '50d3a9';
}
elseif($amount <= ($unit * 2)){
return '7bd350';
}
elseif($amount <= ($unit * 3)){
return 'd3b050';
}
elseif($amount <= ($unit * 4)){
return 'd35050';
}
}
public function GetGuildRanking($limit, $monthList, $slots){
if(gettype($limit) === 'integer'){
$guild = self::Select(array('m_idGuild', 'm_szGuild', 'm_nLevel', 'CreateTime'), 'Character', 'GUILD_TBL', null, ' ORDER BY [m_nLevel] DESC, [CreateTime] DESC', 'TOP '.$limit. ' ');
$rows = $guild['Rows'];
if($rows > 0){
$guild = $guild['Result'];
$a = 0;
for($i = 1;$i <= $rows;$i++){
$guild[$i]['Authority'] = self::CheckGuildMemberAuthority($guild[$i]['m_idGuild']);
if($guild[$i]['Authority'] === 1){
$guild[$i]['MemberAmount'] = self::GetGuildMemberAmount($guild[$i]['m_idGuild']);
$guild[$i]['CreateTime'] = self::BetterGuildCreateFormat($guild[$i]['CreateTime'],$monthList);
$guild[$i]['GuildLeader'] = self::GetGuildLeader($guild[$i]['m_idGuild']);
$guild[$i]['SlotSplitter'] = self::SplitSlotValues($slots, $guild[$i]['MemberAmount']);
$a++;
}else {
unset($guild[$i]);
}
}
$mirror = array();
foreach($guild as $key => $value){
$mirror[] = $guild[$key];
}
$mirror['bool'] = true;
$mirror['hide'] = $a;
return $mirror;
}else {
return array('bool' => false, 'danger', 'There are actually none registered guilds.');
}
}
}
}
<?php
class Ranking extends Database {
/* Player Ranking Functions */
public static function GetClassIcon($classID) {
$class = Flyff::GetClassName($classID);
if(!$class[1]){
$class = $class[0];
}else {
$class = $class[0] . ' ' . $class[1];;
}
return $class;
}
public static function GetClassName($classID) {
$class = Flyff::GetClassName($classID);
$class = $class[0];
return $class;
}
public function GetPlayerList($limit) {
$get = self::Select(array('m_szName', 'm_nJob', 'm_nLevel', 'TotalPlayTime'), 'Character', 'CHARACTER_TBL', array('m_chAuthority' => 'F', 'isblock' => 'F'), ' ORDER BY [m_nLevel] DESC, [TotalPlayTime] DESC', 'TOP '.$limit.' ', 0 , array('=', '='));
if($get['Rows'] > 0){
$get['bool'] = true;
return $get;
}else {
$get['bool'] = false;
return array('danger', 'There are no ranked players yet.');
}
}
public function SelectGuildIDByPlayer($player){
$guildID = self::Select(array('m_idGuild'), 'Character', 'GUILD_MEMBER_TBL', array('m_idPlayer' => $player), null);
if($guildID['Rows'] > 0){
$guildID = $guildID['Result'][1]['m_idGuild'];
}else {
$guildID = 'Guildless';
}
return $guildID;
}
private function SelectGuildNameByGuildID($guildID){
$guildName = $guildID;
if($guildName !== 'Guildless'){
$guildName = self::Select(array('m_szGuild'), 'Character', 'GUILD_TBL', array('m_idGuild' => $guildID), null);
$guildName = $guildName['Result'][1]['m_szGuild'];
}
return $guildName;
}
private function SetMultiserverView($multiserver){
if($multiserver === '1'){
return 'Online';
}else {
return 'Offline';
}
}
public function GetPlayerRanking($limit){
if(gettype($limit) === 'integer'){
$player = self::Select(array('m_idPlayer', 'm_szName', 'm_nJob', 'm_nLevel', 'TotalPlayTime', 'Multiserver'), 'Character', 'CHARACTER_TBL', array('m_chAuthority' => 'F', 'isblock' => 'F'), ' ORDER BY [m_nLevel] DESC, [TotalPlayTime] DESC', 'TOP '.$limit.' ', 0, array('=', '='));
$rows = $player['Rows'];
if($rows > 0){
$player = $player['Result'];
for($i = 1;$i <= $rows;$i++){
$player[$i]['m_szGuild'] = self::SelectGuildNameByGuildID(self::SelectGuildIDByPlayer($player[$i]['m_idPlayer']));
$player[$i]['Multiserver'] = self::SetMultiserverView($player[$i]['Multiserver'] );
}
$player['bool'] = true;
return $player;
}else {
return array('danger', 'Actually we have no registered players.', 'bool' => false, );
}
}else {
return array('danger', 'Please stop forging the values.', 'bool' => false, );
}
}
/* Guild Ranking Functions */
private function CheckGuildMemberAuthority($guildID){
$response = 1;
$playerID = self::Select(array('m_idPlayer'), 'Character', 'GUILD_MEMBER_TBL', array('m_idGuild' => $guildID));
$authority = array();
for($i = 1;$i <= $playerID['Rows'];$i++){
$authority[$i] = self::Select(array('m_chAuthority'), 'Character', 'CHARACTER_TBL', array('m_idPlayer' => $playerID['Result'][$i]['m_idPlayer']));
if($authority[$i]['Result'][1]['m_chAuthority'] !== 'F'){
$response = 0;
}
}
return $response;
}
private function SelectLeaderNameByGuildID($leaderID){
$leaderName = self::Select(array('m_szName'), 'Character', 'CHARACTER_TBL', array('m_idPlayer' => $leaderID), null, 'TOP 1 ');
return $leaderName['Result'][1]['m_szName'];
}
private function BetterGuildCreateFormat($creationDate, $monthList){
$creationDate = substr($creationDate, 0, strlen($creationDate)-12);
$creationDate = explode('-', $creationDate);
$creationDate[1] = $monthList[$creationDate[1]-1];
$creationDate = $creationDate[1] . ', ' . $creationDate[0];
return $creationDate;
}
private function GetGuildMemberAmount($guildID){
$amount = self::Select(array('m_idPlayer'), 'Character', 'GUILD_MEMBER_TBL', array('m_idGuild' => $guildID));
return $amount['Rows'];
}
private function GetGuildLeader($guildID){
$leader = self::Select(array('m_idPlayer', 'm_nMemberLv'), 'Character', 'GUILD_MEMBER_TBL', array('m_idGuild' => $guildID), ' ORDER by [m_nMemberLv]', 'TOP 1 ');
$leader = self::SelectLeaderNameByGuildID($leader['Result'][1]['m_idPlayer']);
return $leader;
}
//in relation to slot amount + farbcodes
private function SplitSlotValues($slots, $amount){
$unit = $slots / 4;
if($amount <= $unit){
return '50d3a9';
}
elseif($amount <= ($unit * 2)){
return '7bd350';
}
elseif($amount <= ($unit * 3)){
return 'd3b050';
}
elseif($amount <= ($unit * 4)){
return 'd35050';
}
}
public function GetGuildRanking($limit, $monthList, $slots){
if(gettype($limit) === 'integer'){
$guild = self::Select(array('m_idGuild', 'm_szGuild', 'm_nLevel', 'CreateTime'), 'Character', 'GUILD_TBL', null, ' ORDER BY [m_nLevel] DESC, [CreateTime] DESC', 'TOP '.$limit. ' ');
$rows = $guild['Rows'];
if($rows > 0){
$guild = $guild['Result'];
$a = 0;
for($i = 1;$i <= $rows;$i++){
$guild[$i]['Authority'] = self::CheckGuildMemberAuthority($guild[$i]['m_idGuild']);
if($guild[$i]['Authority'] === 1){
$guild[$i]['MemberAmount'] = self::GetGuildMemberAmount($guild[$i]['m_idGuild']);
$guild[$i]['CreateTime'] = self::BetterGuildCreateFormat($guild[$i]['CreateTime'],$monthList);
$guild[$i]['GuildLeader'] = self::GetGuildLeader($guild[$i]['m_idGuild']);
$guild[$i]['SlotSplitter'] = self::SplitSlotValues($slots, $guild[$i]['MemberAmount']);
$a++;
}else {
unset($guild[$i]);
}
}
$mirror = array();
foreach($guild as $key => $value){
$mirror[] = $guild[$key];
}
$mirror['bool'] = true;
$mirror['hide'] = $a;
return $mirror;
}else {
return array('bool' => false, 'danger', 'There are actually none registered guilds.');
}
}
}
}