Ejemplo n.º 1
0
    void OnEquipConfirm(bool confirm)
    {
        if (confirm == false)
        {
            return;
        }

        C2G.RuneEquip packet = new C2G.RuneEquip();
        packet.rune_idx     = m_PopupRune.Rune.RuneIdx;
        packet.rune_id      = m_PopupRune.Rune.Info.ID;
        packet.creature_idx = m_Creature.Idx;
        packet.creature_id  = m_Creature.Info.ID;
        if (Tutorial.Instance.Completed == false)
        {
            C2G.TutorialState tutorial_packet = new C2G.TutorialState();
            tutorial_packet.tutorial_state      = Network.PlayerInfo.tutorial_state;
            tutorial_packet.next_tutorial_state = (short)Tutorial.Instance.CurrentState;
            tutorial_packet.rune_equip          = packet;
            Network.GameServer.JsonAsync <C2G.TutorialState, C2G.TutorialStateAck>(tutorial_packet, OnRuneEquipTutorial);
        }
        else
        {
            Network.GameServer.JsonAsync <C2G.RuneEquip, NetworkCore.AckDefault>(packet, OnRuneEquip);
        }
    }
Ejemplo n.º 2
0
    void OnRuneEquip(C2G.RuneEquip packet, NetworkCore.AckDefault ack)
    {
        RuneManager.Instance.EquipRune(packet.rune_idx, packet.creature_idx);
        RuneItem item = m_Runes.Find(r => r.Rune.RuneIdx == packet.rune_idx);

        int find_index = m_HeroRunes.FindIndex(r => r.Rune == null);

        m_HeroRunes[find_index].Init(item.Rune, find_index >= m_Creature.RuneSlotCount, OnClickEquippedRune);

        RemoveRune(item);
        RefreshInfo();

        if (Tutorial.Instance.Completed == false)
        {
            Tutorial.Instance.AfterNetworking();
        }
        Tooltip.Instance.ShowMessageKey("RuneEquipSuccess");
    }