Beispiel #1
0
 internal bool ConvertServerHeroRuneInfo(ref ActorServerRuneData serverData, ActorRunelSlot runeSlot, COMDT_CHOICEHERO serverHeroInfo)
 {
     if (runeSlot >= ActorRunelSlot.SlotMaxCount)
     {
         return(false);
     }
     serverData.RuneSlot = runeSlot;
     if (serverHeroInfo != null)
     {
         serverData.RuneId = serverHeroInfo.SymbolID[(int)((UIntPtr)runeSlot)];
     }
     return(true);
 }
 public virtual bool GetActorServerRuneData(ref ActorMeta actorMeta, ActorRunelSlot runeSlot, ref ActorServerRuneData runeData)
 {
     return(false);
 }
Beispiel #3
0
        public override bool GetActorServerRuneData(ref ActorMeta actorMeta, ActorRunelSlot runeSlot, ref ActorServerRuneData runeData)
        {
            runeData.TheActorMeta = actorMeta;
            ListView <COMDT_CHOICEHERO> inSearchList = null;

            if (!this._serverCachedInfo.TryGetValue(actorMeta.PlayerId, ref inSearchList))
            {
                return(false);
            }
            int configId = actorMeta.ConfigId;

            return(this.ConvertServerHeroRuneInfo(ref runeData, runeSlot, this.Find(inSearchList, (COMDT_CHOICEHERO hero) => (ulong)hero.stBaseInfo.stCommonInfo.dwHeroID == (ulong)((long)configId))));
        }