No wait respawn in camera mode - Страница 2 - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Сообщество Календарь
Вернуться   Форум администраторов игровых серверов > MMO > Point Blank (Piercing Blow)

Point Blank (Piercing Blow)
Общие вопросы по написанию эмулятора. General questions on developing emulator. При поддержке: Lucera 2 - разработка Java Interlude

Ответ
Опции темы
Непрочитано 05.01.2016, 17:30   #11
Аватар для Exile03
Пользователь

Автор темы (Топик Стартер) Re: No wait respawn in camera mode

i not understand well this man
this is call
Код:
PlayersSlotsMask |= 1 << player.SlotId;
Exile03 вне форума Ответить с цитированием
Непрочитано 05.01.2016, 19:10   #12
Аватар для PROGRAMMATOR
Администратор

По умолчанию Re: No wait respawn in camera mode

PlayersSlotsMask is properties of Room class, which contains ready to battle players mask (who press "Ready" button).
__________________
composer require laravel/framework
yarn add vue
PROGRAMMATOR вне форума Отправить сообщение для PROGRAMMATOR с помощью ICQ Отправить сообщение для PROGRAMMATOR с помощью Skype™ Ответить с цитированием
Непрочитано 06.01.2016, 02:04   #13
Аватар для Exile03
Пользователь

Автор темы (Топик Стартер) Re: No wait respawn in camera mode

i very try understand and create method same this
but i not understand very well
u can create simple method for me understand?
please
Exile03 вне форума Ответить с цитированием
Непрочитано 06.01.2016, 04:08   #14
Аватар для PROGRAMMATOR
Администратор

По умолчанию Re: No wait respawn in camera mode

using PiercingBlow.Game.Network.Send;
 
namespace PiercingBlow.Game.Network.Receive
{
    class PROTOCOL_BATTLE_READYBATTLE_REQ : Packet
    {
        public override void RunImpl()
        {
            var slot = Account.Slot;
 
            if (slot.HasState(SlotState.NORMAL))
            {
                Room.ReadySlotsMask |= 1 << slot.Id;
                slot.State = SlotState.READY;
            }
            else
            {
                Room.ReadySlotsMask ^= 1 << slot.Id;
                slot.State = SlotState.NORMAL;
            }
 
            // ...
        }
    }
}
 
 
Code: C#
__________________
composer require laravel/framework
yarn add vue
PROGRAMMATOR вне форума Отправить сообщение для PROGRAMMATOR с помощью ICQ Отправить сообщение для PROGRAMMATOR с помощью Skype™ Ответить с цитированием
Непрочитано 22.01.2016, 17:53   #15
Аватар для Exile03
Пользователь

Автор темы (Топик Стартер) Re: No wait respawn in camera mode

hey man i try this but not understand well error camera wait round finish this locate?

Код:
using PiercingBlow.Game.Network.Send;
 
namespace PiercingBlow.Game.Network.Receive
{
    class PROTOCOL_BATTLE_READYBATTLE_REQ : Packet
    {
        public override void RunImpl()
        {
            var slot = Account.Slot;
 
            if (slot.HasState(SlotState.NORMAL))
            {
                Room.ReadySlotsMask |= 1 << slot.Id;
                slot.State = SlotState.READY;
            }
            else
            {
                Room.ReadySlotsMask ^= 1 << slot.Id;
                slot.State = SlotState.NORMAL;
            }
 
            // ...
        }
    }
}
 
 
Code: C#

This is my code Java
public class CM_BATTLE_READY extends ClientPacket {
 
	public CM_BATTLE_READY(int opcode) {
		super(opcode);
	}
 
	@Override
	public void readImpl() {
	}
 
	@Override
	public void runImpl() {
		final Room room = getConnection().getRoom();
		if(room.getLeader().equals(getConnection().getPlayer())) {
			if(room.isFigth() == 0) {
				room.setFigth(1);
				room.setTimeLost(room.getKillTime() * 60);
				room.blueTeamCount = 0;
				room.redTeamCount = 0;
				room.doRound = 0;
			}
			ThreadPoolManager.getInstance().executeTask(new Runnable() {
				@Override
				public void run() {
					for(Player member : getConnection().getRoom().getPlayers().values()) {
						RoomSlot slot = room.getRoomSlotByPlayer(member);
 
						if(slot.getState() == SlotState.SLOT_STATE_READY && !room.getLeader().equals(member)) {
 
							slot.setState(SlotState.SLOT_STATE_LOAD);
							member.getConnection().sendPacket(new SM_BATTLE_READY(room, getConnection().getPlayer()));
						} else if(room.getLeader().equals(member)) {
							slot.setState(SlotState.SLOT_STATE_LOAD);
							member.getConnection().sendPacket(new SM_BATTLE_READY(room, member));
						}
					}
				}
			});
		} else {
			RoomSlot slotLeader = room.getRoomSlotByPlayer(room.getLeader());
			RoomSlot slot = room.getRoomSlotByPlayer(getConnection().getPlayer());
 
			if(slotLeader.getState() == SlotState.SLOT_STATE_LOAD || slotLeader.getState() == SlotState.SLOT_STATE_RENDEZVOUS || slotLeader.getState() == SlotState.SLOT_STATE_PRESTART || slotLeader.getState() == SlotState.SLOT_STATE_BATTLE_READY || slotLeader.getState() == SlotState.SLOT_STATE_BATTLE) {
				slot.setState(SlotState.SLOT_STATE_LOAD);
				sendPacket(new SM_BATTLE_READY(room, getConnection().getPlayer()));
			}
			if(slot.getState() == SlotState.SLOT_STATE_READY) {
				slot.setState(SlotState.SLOT_STATE_NORMAL);
			} else if(slot.getState() == SlotState.SLOT_STATE_NORMAL) {
				slot.setState(SlotState.SLOT_STATE_READY);
			}
		}
		ThreadPoolManager.getInstance().executeTask(new Runnable() {
			@Override
			public void run() {
				for(Player member : getConnection().getRoom().getPlayers().values()) {
					member.getConnection().sendPacket(new SM_ROOM_INFO(room));
				}
			}
		});
	}
 
 
Code: Java
Exile03 вне форума Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Java Someone know how i can fix Player Respawn BUG Exile03 Point Blank (Piercing Blow) 1 06.12.2015 16:54
Ошибки виртуальной машины SoniPro Lineage II 0 20.08.2015 11:47
Зависают запросы MySQL Zhelnar Lineage II 12 08.08.2014 13:58
Как сделать своего НПС ходящим и говорящим..сюда(ребелион) bucha Lineage II 7 04.08.2008 21:30


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 05:54. Часовой пояс GMT +3.

Вверх