Dgk Reborn
please login or register if you havent already.
Dgk Reborn
please login or register if you havent already.
Dgk Reborn
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Dgk Reborn

Dgk-Reborn Private Server
 
HomeHomeLatest imagesSearchRegisterLog in

 

 Fix Xlog! Please

Go down 
AuthorMessage
Wes
Owner
Owner
Wes


Posts : 74
Join date : 2009-09-01
Age : 29
Location : Usa,Ohio,Defiance

Fix Xlog! Please Empty
PostSubject: Fix Xlog! Please   Fix Xlog! Please Icon_minitimeSat Oct 31, 2009 2:28 pm

Base Tested On: Deltascape
Difficulty: 3.0

Declare This In Player.Java


public boolean xlogging = false;
public int xloggingTimer = -1;

Open Client.Java

Quote :

if(xlogging && xloggingTimer == -1) {
xloggingTimer = 40;
}
if(xlogging && xloggingTimer == 0) {
xloggingTimer = -1;
xlogging = false;
disconnected = true;
}
if(xloggingTimer > 0) {
xloggingTimer--;
}
Open PlayerHandler.Java

Quote :

for (int i = 0; i < maxPlayers; i++) {
try {
if (players[i] == null || !players[i].isActive) continue;

players[i].preProcessing();
players[i].process();
while(players[i].packetProcess());
players[i].postProcessing();
players[i].getNextPlayerMovement();

if (players[i].disconnected && !players[i].xlogging) {
if(players[i].inCombat) {
players[i].xlogging = true;
} else {
client p = (client) players[i];
if (p.inTrade) {
client p2 = (client) players[p.trade_reqId];
p.declineTrade();
p2.declineTrade();
}
removePlayer(players[i]);
players[i] = null;
}
}
} catch (Exception e) {
players[i].disconnected = true;
e.printStackTrace();
}
}
Then...

Quote :

// loop through all players and do the updating stuff
for (int i = 0; i < maxPlayers; i++) {

if (players[i] == null || !players[i].isActive) continue;

try {
if (players[i].disconnected && !players[i].xlogging) {
if(players[i].inCombat) {
players[i].xlogging = true;
} else {
if (players[i].savefile == true) {
if (saveGame(players[i])) {
System.out.println("Game saved for player "+ players[i].playerName);
} else {
System.out.println("Could not save for "+ players[i].playerName);
}
} else {
System.out.println("Did not save for "+ players[i].playerName);
}
removePlayer(players[i]);
players[i] = null;
}
} else {
if (!players[i].initialized) {
players[i].initialize();
players[i].initialized = true;
} else {
players[i].update();
}
}
} catch(Exception e) {
e.printStackTrace();
}
}
Again Then...

Quote :

public void removePlayer(Player plr){
if (plr == null || plr.xlogging || plr.inCombat)
return;
if (plr.Privatechat != 2) { // PM System
for (int i = 1; i < maxPlayers; i++) {
if ((players[i] == null) || (players[i].isActive == false)
|| (players[i].playerName == null))
continue;
players[i].pmupdate(plr.playerId, 0);
}
}
plr.destruct();
}
Open Client.Java And Find This In The Run() Method

Quote :

while(!disconnected
Add This Under The Loop

Quote :

if(inCombat || xlogging)
disconnected = false
Back to top Go down
https://dgkr.darkbb.com
 
Fix Xlog! Please
Back to top 
Page 1 of 1

Permissions in this forum:You cannot reply to topics in this forum
Dgk Reborn :: General :: General-
Jump to: