Esempio n. 1
0
    private void OnNotifyBattleStart(SocketModel model)
    {
        NotifyBattleStart notify = SerializeUtil.Deserialize <NotifyBattleStart>(model.message);

        CacheManager.instance.battleid   = notify.battleid;
        CacheManager.instance.battleType = (EBattle)notify.battleType;
        CacheManager.instance.limitNum   = notify.numberLimit;

        UIManager.instance.CloseAll();

        for (int i = 0; i < notify.tanks.Count; i++)
        {
            //修改缓存
            //CacheManager.instance.tanks.Add(notify.tanks[i]);

            BaseTank tank = null;
            if (notify.tanks[i].id == CacheManager.instance.account)
            {
                //CacheManager.instance.myTank = notify.tanks[i];
                tank = new Tank(notify.tanks[i]);
            }
            else
            {
                tank = new OtherTank(notify.tanks[i]);
            }
            TankManager.instance.AddTank(tank);
        }
    }
Esempio n. 2
0
    void OnNotifyFire(SocketModel model)
    {
        NotifyFire notify = SerializeUtil.Deserialize <NotifyFire>(model.message);

        OtherTank tank = TankManager.instance.GetTank(notify.id) as OtherTank;

        if (tank != null)
        {
            tank.Fire(Tools.ToVec3(notify.pos), Tools.ToVec3(notify.rot));
        }
    }
Esempio n. 3
0
    void OnNotifyOffline(SocketModel model)
    {
        NotifyOffline notify = SerializeUtil.Deserialize <NotifyOffline>(model.message);

        //销毁坦克
        OtherTank tank = TankManager.instance.GetTank(notify.id) as OtherTank;

        if (tank != null)
        {
            tank.Destory();
        }

        //移除坦克对象
        TankManager.instance.RemoveTank(tank);
    }
Esempio n. 4
0
    private void OnNotifyReborn(SocketModel model)
    {
        NotifyReborn notify = SerializeUtil.Deserialize <NotifyReborn>(model.message);

        BaseTank t = TankManager.instance.GetTank(notify.tank.id);

        if (t != null)
        {
            TankManager.instance.RemoveTank(t);
            t.Clear();
        }
        BaseTank tank = null;

        if (notify.tank.id == CacheManager.instance.account)
        {
            tank = new Tank(notify.tank);
        }
        else
        {
            tank = new OtherTank(notify.tank);
        }
        TankManager.instance.AddTank(tank);
    }