示例#1
0
 static VT_eDamageElement[] Curtain_FGameInfo_QueryAutoDamageElementList(string monstername)
 {
     System.Collections.ObjectModel.ReadOnlyCollection <uTank2.eDamageElement> elist = uTank2.PluginCore.PC.FGameInfo_QueryAutoDamageElementList(monstername);
     if (elist == null)
     {
         return(null);
     }
     VT_eDamageElement[] ret = new VT_eDamageElement[elist.Count];
     for (int i = 0; i < elist.Count; ++i)
     {
         ret[i] = (VT_eDamageElement)(int)elist[i];
     }
     return(ret);
 }
        void Core_CommandLineText(object sender, Decal.Adapter.ChatParserInterceptEventArgs e)
        {
            try
            {
                if (e.Text == "/vtmon")
                {
                    e.Eat = true;

                    Decal.Adapter.Wrappers.WorldObject sel = Core.WorldFilter[Host.Actions.CurrentSelection];
                    if (sel == null)
                    {
                        Chat("Select a monster first."); return;
                    }
                    if (sel.ObjectClass != Decal.Adapter.Wrappers.ObjectClass.Monster)
                    {
                        Chat("Select a monster first."); return;
                    }

                    //Fetch the info about the monster.
                    VT_eDamageElement[] autodamages = VirindiTank_FreeConnector.FGameInfo_QueryAutoDamageElementList(sel.Name);
                    if (autodamages == null)
                    {
                        autodamages = new VT_eDamageElement[0];
                    }

                    VT_eDamageElement monsterlistvalue = VirindiTank_FreeConnector.FMonsterList_QueryFinalDamageType(sel.Id);

                    Chat("Monster \"" + sel.Name + "\" will be attacked using " + monsterlistvalue.ToString());

                    StringBuilder sb = new StringBuilder();
                    for (int i = 0; i < autodamages.Length; ++i)
                    {
                        sb.Append(autodamages[i].ToString());
                        if (i < autodamages.Length - 1)
                        {
                            sb.Append(", ");
                        }
                    }

                    Chat("Auto damage list: " + sb.ToString());
                }
            }
            catch (Exception ex)
            {
                Chat(ex.ToString());
            }
        }
示例#3
0
 private static VT_eDamageElement[] Curtain_FGameInfo_QueryAutoDamageElementList(string monstername)
 {
     System.Collections.ObjectModel.ReadOnlyCollection<uTank2.eDamageElement> elist = uTank2.PluginCore.PC.FGameInfo_QueryAutoDamageElementList(monstername);
     if (elist == null) return null;
     VT_eDamageElement[] ret = new VT_eDamageElement[elist.Count];
     for (int i = 0; i < elist.Count; ++i)
     {
         ret[i] = (VT_eDamageElement)(int)elist[i];
     }
     return ret;
 }