Newbie Spellweaver
- Joined
- Jun 21, 2015
- Messages
- 69
- Reaction score
- 15
CM_BATTLE_STARTBATTLE
CM_BATTLE_ENDBATTLE
Credits:
Skelleton
Dwlic [Post]
Code:
using PBServer;using PBServer.network;
using PBServer.network.Game.packets.serverpackets;
using PBServer.src.model.accounts;
using PBServer.src.model.rooms;
using System;
namespace PBServer.src.network.gsPacket.clientpackets
{
internal class CM_BATTLE_STARTBATTLE : ReceiveBaseGamePacket
{
public CM_BATTLE_STARTBATTLE(GameClient Client, byte[] data)
{
base.makeme(Client, data);
CLogger.getInstance().skelleton(BitConverter.ToString(data));
}
protected internal override void read()
{
}
protected internal override void run()
{
Account player = base.getClient().getPlayer();
Room room = player.getRoom();
player.sendPacket(new SM_BATTLE_BOT_INFO(room));
player.sendPacket(new SM_BATTLE_ROOMINFO(room));
if (room.getSlotState(player.getSlot()) == SLOT_STATE.SLOT_STATE_PRESTART)
{
room.changeSlotState(player.getSlot(), SLOT_STATE.SLOT_STATE_BATTLE_READY, true);
}
}
}
}
CM_BATTLE_ENDBATTLE
Code:
using PBServer;using PBServer.model.players;
using PBServer.network;
using PBServer.network.BattleConnect;
using PBServer.src.managers;
using PBServer.src.model.accounts;
using PBServer.src.model.rooms;
using PBServer.src.network.gsPacket.serverpackets;
using System;
using System.Collections.Generic;
namespace PBServer.src.network.gsPacket.clientpackets
{
public class CM_BATTLE_ENDBATTLE : ReceiveBaseGamePacket
{
private int itemid;
public CM_BATTLE_ENDBATTLE(GameClient Client, byte[] data)
{
base.makeme(Client, data);
CLogger.getInstance().info_blue(BitConverter.ToString(data));
}
protected internal override void read()
{
base.readH();
this.itemid = base.readD();
}
protected internal override void run()
{
Account playerInRoom = null;
Account player = base.getClient().getPlayer();
Room room = player.getRoom();
player._statistic.setEscapes(player._statistic.getEscapes_s() + 1);
AccountManager.getInstance().updateEscapes(player);
UdpHandler.getInstance().RemovePlayerInRoom(player);
if (!(player.getSlot() != player.getRoom().getLeader().getSlot() ? true : player.getRoom().getAllPlayers().Count != 1))
{
for (int slot = 0; slot < 16; slot++)
{
if ((room._slots[slot].state == SLOT_STATE.SLOT_STATE_BATTLE ? true : room._slots[slot].state == SLOT_STATE.SLOT_STATE_PRESTART))
{
room.changeSlotState(slot, SLOT_STATE.SLOT_STATE_NORMAL, true);
}
room._slots[slot].allDeaths = 0;
room._slots[slot].allKills = 0;
room._slots[slot].killMessage = 0;
room._slots[slot].killsOnLife = 0;
room._slots[slot].lastKillState = 0;
room._slots[slot].repeatLastState = false;
room._slots[slot].botScore = 0;
room._slots[slot].headshotsInPlay = 0;
}
room._redKills = 0;
room._redDeaths = 0;
room._blueKills = 0;
room._blueDeaths = 0;
room._timeRoom = room.getTimeByMask() * 60;
room.setState(ROOM_STATE.ROOM_STATE_READY);
player.sendPacket(new SM_BATTLE_ENDBATTLE(player));
}
else if (!(player.getSlot() != player.getRoom().getLeader().getSlot() || player.getRoom().getAllPlayers().Count <= 1 ? true : player.getRoom().special != 6))
{
foreach (Account allPlayer in player.getRoom().getAllPlayers())
{
if (allPlayer != null)
{
if (player.getRoom().getSlotState(allPlayer.getSlot()) == SLOT_STATE.SLOT_STATE_BATTLE)
{
if ((player.getRoom().getSlot(player.getSlot()).state == SLOT_STATE.SLOT_STATE_BATTLE ? true : player.getRoom().getSlot(player.getSlot()).state == SLOT_STATE.SLOT_STATE_PRESTART))
{
player.getRoom().changeSlotState(player.getSlot(), SLOT_STATE.SLOT_STATE_NORMAL, true);
}
player.getRoom().getSlot(player.getSlot()).allDeaths = 0;
player.getRoom().getSlot(player.getSlot()).allKills = 0;
player.getRoom().getSlot(player.getSlot()).killMessage = 0;
player.getRoom().getSlot(player.getSlot()).killsOnLife = 0;
player.getRoom().getSlot(player.getSlot()).lastKillState = 0;
player.getRoom().getSlot(player.getSlot()).repeatLastState = false;
player.getRoom().getSlot(player.getSlot()).botScore = 0;
player.sendPacket(new SM_BATTLE_ENDBATTLE2(player));
player.sendPacket(new SM_3385(player.getSlot()));
if (player.getPlayerId() != allPlayer.getPlayerId())
{
allPlayer.sendPacket(new SM_BATTLE_CHANGE_NETWORK_INFO(player.getRoom()));
}
}
}
}
}
else if (!(player.getSlot() != player.getRoom().getLeader().getSlot() || player.getRoom().getAllPlayers().Count != 2 ? true : player.getRoom().special == 6))
{
foreach (Account account in player.getRoom().getAllPlayers())
{
if ((player.getSlot() == account.getSlot() ? false : player.getRoom().getSlotState(account.getSlot()) == SLOT_STATE.SLOT_STATE_BATTLE))
{
if ((player.getRoom().getSlot(player.getSlot()).state == SLOT_STATE.SLOT_STATE_BATTLE ? true : player.getRoom().getSlot(player.getSlot()).state == SLOT_STATE.SLOT_STATE_PRESTART))
{
player.getRoom().changeSlotState(player.getSlot(), SLOT_STATE.SLOT_STATE_NORMAL, true);
}
player.getRoom().getSlot(player.getSlot()).allDeaths = 0;
player.getRoom().getSlot(player.getSlot()).allKills = 0;
player.getRoom().getSlot(player.getSlot()).killMessage = 0;
player.getRoom().getSlot(player.getSlot()).killsOnLife = 0;
player.getRoom().getSlot(player.getSlot()).lastKillState = 0;
player.getRoom().getSlot(player.getSlot()).repeatLastState = false;
player.getRoom().getSlot(player.getSlot()).botScore = 0;
account.sendPacket(new SM_3385(player.getSlot()));
account.sendPacket(new SM_BATTLE_CHANGE_NETWORK_INFO(player.getRoom()));
player.getRoom().setState(ROOM_STATE.ROOM_STATE_BATTLE_END);
account.getRoom().CalculateBattleResult(account);
account.sendPacket(new SM_BATTLE_ENDBATTLE(account));
}
}
}
else if (!(player.getSlot() == player.getRoom().getLeader().getSlot() || player.getRoom().getAllPlayers().Count != 2 ? true : player.getRoom().special == 6))
{
foreach (Account allPlayer1 in player.getRoom().getAllPlayers())
{
if ((player.getSlot() == allPlayer1.getSlot() ? false : player.getRoom().getSlotState(allPlayer1.getSlot()) == SLOT_STATE.SLOT_STATE_BATTLE))
{
if ((player.getRoom().getSlot(player.getSlot()).state == SLOT_STATE.SLOT_STATE_BATTLE ? true : player.getRoom().getSlot(player.getSlot()).state == SLOT_STATE.SLOT_STATE_PRESTART))
{
player.getRoom().changeSlotState(player.getSlot(), SLOT_STATE.SLOT_STATE_NORMAL, true);
}
player.getRoom().getSlot(player.getSlot()).allDeaths = 0;
player.getRoom().getSlot(player.getSlot()).allKills = 0;
player.getRoom().getSlot(player.getSlot()).killMessage = 0;
player.getRoom().getSlot(player.getSlot()).killsOnLife = 0;
player.getRoom().getSlot(player.getSlot()).lastKillState = 0;
player.getRoom().getSlot(player.getSlot()).repeatLastState = false;
player.getRoom().getSlot(player.getSlot()).botScore = 0;
allPlayer1.sendPacket(new SM_3385(player.getSlot()));
allPlayer1.sendPacket(new SM_BATTLE_CHANGE_NETWORK_INFO(player.getRoom()));
player.getRoom().setState(ROOM_STATE.ROOM_STATE_BATTLE_END);
allPlayer1.getRoom().CalculateBattleResult(allPlayer1);
allPlayer1.sendPacket(new SM_BATTLE_ENDBATTLE(allPlayer1));
}
}
}
else if (!(player.getSlot() == player.getRoom().getLeader().getSlot() ? true : player.getRoom().getAllPlayers().Count <= 2))
{
if ((player.getRoom().getSlot(player.getSlot()).state == SLOT_STATE.SLOT_STATE_BATTLE ? true : player.getRoom().getSlot(player.getSlot()).state == SLOT_STATE.SLOT_STATE_PRESTART))
{
player.getRoom().changeSlotState(player.getSlot(), SLOT_STATE.SLOT_STATE_NORMAL, true);
}
player.getRoom().getSlot(player.getSlot()).allDeaths = 0;
player.getRoom().getSlot(player.getSlot()).allKills = 0;
player.getRoom().getSlot(player.getSlot()).killMessage = 0;
player.getRoom().getSlot(player.getSlot()).killsOnLife = 0;
player.getRoom().getSlot(player.getSlot()).lastKillState = 0;
player.getRoom().getSlot(player.getSlot()).repeatLastState = false;
player.getRoom().getSlot(player.getSlot()).botScore = 0;
foreach (Account playersInRoom in player.getRoom().getAllPlayers())
{
playersInRoom.sendPacket(new SM_3385(player.getSlot()));
}
player.sendPacket(new SM_BATTLE_ENDBATTLE2(player));
}
else if ((player.getSlot() == player.getRoom().getLeader().getSlot() || player.getRoom().getAllPlayers().Count <= 1 ? true : player.getRoom().special != 6))
{
CLogger.getInstance().info("FALHA AO RETIRAR JOGADOR.");
}
else
{
foreach (Account playerInRoom2 in player.getRoom().getAllPlayers())
{
if (playerInRoom2 != null)
{
if (player.getRoom().getSlotState(playerInRoom2.getSlot()) == SLOT_STATE.SLOT_STATE_BATTLE)
{
if ((player.getRoom().getSlot(player.getSlot()).state == SLOT_STATE.SLOT_STATE_BATTLE ? true : player.getRoom().getSlot(player.getSlot()).state == SLOT_STATE.SLOT_STATE_PRESTART))
{
player.getRoom().changeSlotState(player.getSlot(), SLOT_STATE.SLOT_STATE_NORMAL, true);
}
player.getRoom().getSlot(player.getSlot()).allDeaths = 0;
player.getRoom().getSlot(player.getSlot()).allKills = 0;
player.getRoom().getSlot(player.getSlot()).killMessage = 0;
player.getRoom().getSlot(player.getSlot()).killsOnLife = 0;
player.getRoom().getSlot(player.getSlot()).lastKillState = 0;
player.getRoom().getSlot(player.getSlot()).repeatLastState = false;
player.getRoom().getSlot(player.getSlot()).botScore = 0;
player.sendPacket(new SM_BATTLE_ENDBATTLE2(player));
playerInRoom2.sendPacket(new SM_3385(player.getSlot()));
}
}
}
}
}
}
}
Credits:
Skelleton
Dwlic [Post]
Last edited by a moderator: