Exemplo n.º 1
0
    public int Param2Index()
    {
        int result = -1;

        if (param.Length > 0)
        {
            if (IsConsumableBuff)
            {
                TBuff tBuff = BuffManager.Instance.Get(param);
                if (tBuff != null)
                {
                    result = tBuff.Index;
                }
            }
            else if (functionMask == 80)
            {
                try
                {
                    return(int.Parse(param));
                }
                catch
                {
                    return(-1);
                }
            }
        }
        return(result);
    }
Exemplo n.º 2
0
 private bool Add(int index, string name, TBuff buff)
 {
     if (dic.ContainsKey(index) || dicByName.ContainsKey(name))
     {
         return(false);
     }
     dic.Add(index, buff);
     dicByName.Add(name, buff);
     return(true);
 }
Exemplo n.º 3
0
 public TItem(string itemCode,TYPE itemType,string itemName,Texture2D itemIcon,int ct,int ck,bool itemTakeoffable,SLOT itemSlot,string itemComment,TBuff tb,bool itemDiscomposable,string itemBpBackCode,int upType,UPGRADE_CATEGORY upCat,bool basic,int starRate)
 {
     code            = itemCode;
     type            = itemType;
     name            = itemName;
     icon            = itemIcon;
     catType         = ct;
     catKind         = ck;
     takeoffable     = itemTakeoffable;
     slot            = itemSlot;
     comment         = itemComment;
     IsAmount        = false;
     tBuff           = tb;
     discomposable   = itemDiscomposable;
     bpBackCode      = itemBpBackCode;
     upgradeType     = upType;
     upgradeCategory = upCat;
     isBasic         = basic;
     _starRate       = starRate;
 }
Exemplo n.º 4
0
    private void DoPCBangBuffRows(ref Vector2 pos, bool calcHeight)
    {
        if (!calcHeight)
        {
            LabelUtil.TextOut(new Vector2(10f, pos.y), StringMgr.Instance.Get("PCBANG_ICON_TOOLTIP"), "MiniLabel", new Color(0.91f, 0.6f, 0f), GlobalVars.txtEmptyColor, TextAnchor.UpperLeft);
        }
        pos.y += 20f;
        TBuff tBuff = BuffManager.Instance.Get("pc_bang_fp_up");

        if (tBuff != null && tBuff.IsPoint)
        {
            if (!calcHeight)
            {
                LabelUtil.TextOut(new Vector2(10f, pos.y), string.Format(StringMgr.Instance.Get("POINT_UP"), tBuff.PointRatio), "MiniLabel", new Color(1f, 1f, 0f), GlobalVars.txtEmptyColor, TextAnchor.UpperLeft);
            }
            pos.y += 20f;
        }
        tBuff = BuffManager.Instance.Get("pc_bang_xp_up");
        if (tBuff != null && tBuff.IsXp)
        {
            if (!calcHeight)
            {
                LabelUtil.TextOut(new Vector2(10f, pos.y), string.Format(StringMgr.Instance.Get("XP_UP"), tBuff.XpRatio), "MiniLabel", new Color(1f, 1f, 0f), GlobalVars.txtEmptyColor, TextAnchor.UpperLeft);
            }
            pos.y += 20f;
        }
        if (!calcHeight)
        {
            LabelUtil.TextOut(new Vector2(10f, pos.y), StringMgr.Instance.Get("PCBANG_BUFF1"), "MiniLabel", new Color(1f, 1f, 0f), GlobalVars.txtEmptyColor, TextAnchor.UpperLeft);
        }
        pos.y += 20f;
        if (!calcHeight)
        {
            LabelUtil.TextOut(new Vector2(10f, pos.y), StringMgr.Instance.Get("PCBANG_BUFF2"), "MiniLabel", new Color(1f, 1f, 0f), GlobalVars.txtEmptyColor, TextAnchor.UpperLeft);
        }
        pos.y += 20f;
    }
Exemplo n.º 5
0
 public TWeapon(string itemCode, string itemName, string itemBone, GameObject itemPrefab, GameObject itemPrefab11, Texture2D itemIcon, Texture2D itemIcon11, int ct, int ck, int cc, bool itemTakeoffable, SLOT itemSlot,string itemComment,TBuff tb,bool itemDiscomposable,string itemBpBackCode,int itemDurabilityMax,int upCat,bool basic,int _season,string _grp1,string _grp2,string _grp3,bool twohands,int starRate)
     : base(itemCode,TYPE.WEAPON,itemName,itemIcon,ct,ck,itemTakeoffable,itemSlot,itemComment,tb,itemDiscomposable,itemBpBackCode,0,(UPGRADE_CATEGORY)upCat,basic,starRate)
 {
     prefab        = itemPrefab;
     prefab11      = itemPrefab11;
     icon11        = itemIcon11;
     bone          = itemBone;
     cat           = cc;
     season        = _season;
     grp1          = _grp1;
     grp2          = _grp2;
     grp3          = _grp3;
     IsTwoHands    = twohands;
     durabilityMax = itemDurabilityMax;
 }
Exemplo n.º 6
0
    public void DoBuff()
    {
        numBuf       = 0;
        pointBooster = 0f;
        xpBooster    = 0f;
        luck         = 0f;
        if (MyInfoManager.Instance.HaveFunction("premium_account") >= 0)
        {
            xpBooster    += 10f;
            pointBooster += 10f;
        }
        List <long> list = new List <long>();

        for (int i = 0; i < MyInfoManager.Instance.ShooterTools.Length; i++)
        {
            ConsumableDesc consumableDesc = null;
            Item           itemBySequence = MyInfoManager.Instance.GetItemBySequence(MyInfoManager.Instance.ShooterTools[i]);
            if (itemBySequence != null && itemBySequence.IsAmount && itemBySequence.Template != null && itemBySequence.Template.type == TItem.TYPE.SPECIAL && itemBySequence.Amount > 0 && !list.Contains(itemBySequence.Seq))
            {
                itemBySequence.AmountBuf = itemBySequence.Amount;
                list.Add(itemBySequence.Seq);
            }
            if (itemBySequence != null && itemBySequence.IsAmount && itemBySequence.Template != null && itemBySequence.Template.type == TItem.TYPE.SPECIAL && itemBySequence.AmountBuf > 0)
            {
                TSpecial tSpecial = (TSpecial)itemBySequence.Template;
                if (tSpecial.IsConsumableBuff)
                {
                    string func = TItem.FunctionMaskToString(tSpecial.functionMask);
                    consumableDesc = ConsumableManager.Instance.Get(func);
                    if (consumableDesc != null && !consumableDesc.isShooterTool)
                    {
                        consumableDesc = null;
                    }
                    if (consumableDesc != null)
                    {
                        TBuff tBuff = BuffManager.Instance.Get(tSpecial.param);
                        if (tBuff != null)
                        {
                            if (tBuff.IsPoint)
                            {
                                pointBooster += (float)tBuff.PointRatio;
                            }
                            if (tBuff.IsXp)
                            {
                                xpBooster += (float)tBuff.XpRatio;
                            }
                            if (tBuff.IsLuck)
                            {
                                luck += (float)tBuff.Luck;
                            }
                        }
                    }
                    itemBySequence.AmountBuf--;
                }
            }
        }
        list.Clear();
        list = null;
        string[] usings = MyInfoManager.Instance.GetUsings();
        for (int j = 0; j < usings.Length; j++)
        {
            TItem tItem = TItemManager.Instance.Get <TItem>(usings[j]);
            if (tItem != null && tItem.tBuff != null)
            {
                pointBooster += (float)tItem.tBuff.PointRatio;
                xpBooster    += (float)tItem.tBuff.XpRatio;
                luck         += (float)tItem.tBuff.Luck;
            }
        }
        if (pointBooster > 0f)
        {
            numBuf++;
        }
        if (xpBooster > 0f)
        {
            numBuf++;
        }
        if (luck > 0f)
        {
            numBuf++;
        }
        Item[] usingItems = MyInfoManager.Instance.GetUsingItems();
        for (int k = 0; k < usingItems.Length; k++)
        {
            int num  = 0;
            int num2 = 0;
            num  = 10;
            num2 = usingItems[k].upgradeProps[num].grade;
            if (num2 > 0 && usingItems[k].Template.upgradeCategory != TItem.UPGRADE_CATEGORY.NONE)
            {
                pointBooster += PimpManager.Instance.getValue((int)usingItems[k].Template.upgradeCategory, num, num2 - 1);
            }
            num  = 9;
            num2 = usingItems[k].upgradeProps[num].grade;
            if (num2 > 0 && usingItems[k].Template.upgradeCategory != TItem.UPGRADE_CATEGORY.NONE)
            {
                xpBooster += PimpManager.Instance.getValue((int)usingItems[k].Template.upgradeCategory, num, num2 - 1);
            }
            num  = 12;
            num2 = usingItems[k].upgradeProps[num].grade;
            if (num2 > 0 && usingItems[k].Template.upgradeCategory != TItem.UPGRADE_CATEGORY.NONE)
            {
                luck += PimpManager.Instance.getValue((int)usingItems[k].Template.upgradeCategory, num, num2 - 1);
            }
        }
        armor           = MyInfoManager.Instance.SumArmor();
        mainAmmoMax     = MyInfoManager.Instance.SumFunctionFactor("main_ammo_inc");
        auxAmmoMax      = MyInfoManager.Instance.SumFunctionFactor("aux_ammo_inc");
        grenadeMax1     = MyInfoManager.Instance.SumFunctionFactor("special_ammo_inc");
        grenadeMax2     = MyInfoManager.Instance.SumFunctionFactor("special_ammo_add");
        hpCooltime      = MyInfoManager.Instance.SumFunctionFactor("hp_cooltime");
        dashTimeInc     = MyInfoManager.Instance.SumFunctionFactor("dash_time_inc");
        respawnTimeDec  = MyInfoManager.Instance.SumFunctionFactor("respwan_time_dec");
        fallenDamageDec = MyInfoManager.Instance.SumFunctionFactor("fallen_damage_reduce");
        if (armor > 0)
        {
            numBuf++;
        }
        if (mainAmmoMax > 0f)
        {
            numBuf++;
        }
        if (auxAmmoMax > 0f)
        {
            numBuf++;
        }
        if (grenadeMax1 > 0f)
        {
            numBuf++;
        }
        if (grenadeMax2 > 0f)
        {
            numBuf++;
        }
        if (hpCooltime > 0f)
        {
            numBuf++;
        }
        if (dashTimeInc > 0f)
        {
            numBuf++;
        }
        if (respawnTimeDec > 0f)
        {
            numBuf++;
        }
        if (fallenDamageDec > 0f)
        {
            numBuf++;
        }
        bufHeight = (float)(numBuf * 15);
    }
Exemplo n.º 7
0
    private bool DoBuff(float changeHeight)
    {
        pointBooster = 0f;
        xpBooster    = 0f;
        luck         = 0f;
        if (MyInfoManager.Instance.HaveFunction("premium_account") >= 0)
        {
            xpBooster    += 10f;
            pointBooster += 10f;
        }
        List <long> list = new List <long>();

        for (int i = 0; i < MyInfoManager.Instance.ShooterTools.Length; i++)
        {
            ConsumableDesc consumableDesc = null;
            Item           itemBySequence = MyInfoManager.Instance.GetItemBySequence(MyInfoManager.Instance.ShooterTools[i]);
            if (itemBySequence != null && itemBySequence.IsAmount && itemBySequence.Template != null && itemBySequence.Template.type == TItem.TYPE.SPECIAL && itemBySequence.Amount > 0 && !list.Contains(itemBySequence.Seq))
            {
                itemBySequence.AmountBuf = itemBySequence.Amount;
                list.Add(itemBySequence.Seq);
            }
            if (itemBySequence != null && itemBySequence.IsAmount && itemBySequence.Template != null && itemBySequence.Template.type == TItem.TYPE.SPECIAL && itemBySequence.AmountBuf > 0)
            {
                TSpecial tSpecial = (TSpecial)itemBySequence.Template;
                if (tSpecial.IsConsumableBuff)
                {
                    string func = TItem.FunctionMaskToString(tSpecial.functionMask);
                    consumableDesc = ConsumableManager.Instance.Get(func);
                    if (consumableDesc != null && !consumableDesc.isShooterTool)
                    {
                        consumableDesc = null;
                    }
                    if (consumableDesc != null)
                    {
                        TBuff tBuff = BuffManager.Instance.Get(tSpecial.param);
                        if (tBuff != null)
                        {
                            if (tBuff.IsPoint)
                            {
                                pointBooster += (float)tBuff.PointRatio;
                            }
                            if (tBuff.IsXp)
                            {
                                xpBooster += (float)tBuff.XpRatio;
                            }
                            if (tBuff.IsLuck)
                            {
                                luck += (float)tBuff.Luck;
                            }
                        }
                    }
                    itemBySequence.AmountBuf--;
                }
            }
        }
        list.Clear();
        list = null;
        string[] usings = MyInfoManager.Instance.GetUsings();
        for (int j = 0; j < usings.Length; j++)
        {
            TItem tItem = TItemManager.Instance.Get <TItem>(usings[j]);
            if (tItem != null && tItem.tBuff != null)
            {
                pointBooster += (float)tItem.tBuff.PointRatio;
                xpBooster    += (float)tItem.tBuff.XpRatio;
                luck         += (float)tItem.tBuff.Luck;
            }
        }
        Item[] usingItems = MyInfoManager.Instance.GetUsingItems();
        for (int k = 0; k < usingItems.Length; k++)
        {
            int num  = 0;
            int num2 = 0;
            num  = 10;
            num2 = usingItems[k].upgradeProps[num].grade;
            if (num2 > 0 && usingItems[k].Template.upgradeCategory != TItem.UPGRADE_CATEGORY.NONE)
            {
                pointBooster += PimpManager.Instance.getValue((int)usingItems[k].Template.upgradeCategory, num, num2 - 1);
            }
            num  = 9;
            num2 = usingItems[k].upgradeProps[num].grade;
            if (num2 > 0 && usingItems[k].Template.upgradeCategory != TItem.UPGRADE_CATEGORY.NONE)
            {
                xpBooster += PimpManager.Instance.getValue((int)usingItems[k].Template.upgradeCategory, num, num2 - 1);
            }
            num  = 12;
            num2 = usingItems[k].upgradeProps[num].grade;
            if (num2 > 0 && usingItems[k].Template.upgradeCategory != TItem.UPGRADE_CATEGORY.NONE)
            {
                luck += PimpManager.Instance.getValue((int)usingItems[k].Template.upgradeCategory, num, num2 - 1);
            }
        }
        armor           = MyInfoManager.Instance.SumArmor();
        mainAmmoMax     = MyInfoManager.Instance.SumFunctionFactor("main_ammo_inc");
        auxAmmoMax      = MyInfoManager.Instance.SumFunctionFactor("aux_ammo_inc");
        grenadeMax1     = MyInfoManager.Instance.SumFunctionFactor("special_ammo_inc");
        grenadeMax2     = MyInfoManager.Instance.SumFunctionFactor("special_ammo_add");
        hpCooltime      = MyInfoManager.Instance.SumFunctionFactor("hp_cooltime");
        dashTimeInc     = MyInfoManager.Instance.SumFunctionFactor("dash_time_inc");
        respawnTimeDec  = MyInfoManager.Instance.SumFunctionFactor("respwan_time_dec");
        fallenDamageDec = MyInfoManager.Instance.SumFunctionFactor("fallen_damage_reduce");
        if (pointBooster > 0f || xpBooster > 0f || luck > 0f || armor > 0 || mainAmmoMax > 0f || auxAmmoMax > 0f || grenadeMax1 > 0f || hpCooltime > 0f || grenadeMax2 > 0f || dashTimeInc > 0f || respawnTimeDec > 0f || fallenDamageDec > 0f)
        {
            Texture2D icon = BuffManager.Instance.GetBuffDesc(BuffDesc.WHY.ITEM).icon;
            GUI.Button(new Rect(crdLTBuffIcon.x, crdLTBuffIcon.y - changeHeight, (float)icon.width, (float)icon.height), new GUIContent(icon, "item"), "InvisibleButton");
            return(true);
        }
        return(false);
    }
Exemplo n.º 8
0
 public TAccessory(string itemCode, string itemName, string itemBone, GameObject itemPrefab, Texture2D itemIcon, int ct, int ck, bool itemTakeoffable, SLOT itemSlot,string itemComment,TBuff tb,bool itemDiscomposable,string itemBpBackCode,int _functionMask,int _armor,float _functionFactor,int upCat,int _season,string _grp1,string _grp2,string _grp3,Texture2D _funcIcon,int starRate)
     : base(itemCode,TYPE.ACCESSORY,itemName,itemIcon,ct,ck,itemTakeoffable,itemSlot,itemComment,tb,itemDiscomposable,itemBpBackCode,1,(UPGRADE_CATEGORY)upCat,basic: false,starRate)
 {
     armor              = _armor;
     functionMask       = _functionMask;
     prefab             = itemPrefab;
     bone               = itemBone;
     season             = _season;
     ah_armor           = new int[5];
     ah_key             = itemName.Length;
     ah_index           = ah_key % 5;
     ah_armor[ah_index] = armor << 1;
     functionFactor     = _functionFactor;
     grp1               = _grp1;
     grp2               = _grp2;
     grp3               = _grp3;
     funcIcon           = _funcIcon;
 }
Exemplo n.º 9
0
 public TCostume(string itemCode, string itemName, string itemMain, string itemAux, Material itemMainMat, Material itemAuxMat, Texture2D itemIcon, int ct, int ck, bool itemTakeoffable, SLOT itemSlot,string itemComment,TBuff tb,bool itemDiscomposable,string itemBpBackCode,int itemArmor,int upCat,bool basic,string itemMark,Material itemMarkMat,int _season,string _grp1,string _grp2,string _grp3,int _functionMask,float _functionFactor,Texture2D _funcIcon,int starRate)
     : base(itemCode,TYPE.CLOTH,itemName,itemIcon,ct,ck,itemTakeoffable,itemSlot,itemComment,tb,itemDiscomposable,itemBpBackCode,1,(UPGRADE_CATEGORY)upCat,basic,starRate)
 {
     main               = itemMain;
     aux                = itemAux;
     mainMat            = itemMainMat;
     auxMat             = itemAuxMat;
     armor              = itemArmor;
     mark               = itemMark;
     markMat            = itemMarkMat;
     ah_armor           = new int[5];
     ah_key             = itemName.Length;
     ah_index           = ah_key % 5;
     ah_armor[ah_index] = armor << 1;
     season             = _season;
     grp1               = _grp1;
     grp2               = _grp2;
     grp3               = _grp3;
     functionMask       = _functionMask;
     functionFactor     = _functionFactor;
     funcIcon           = _funcIcon;
 }
Exemplo n.º 10
0
 public TCharacter(string itemCode, string itemName, Texture2D itemIcon, int ct, bool itemTakeoffable, string _gender, string _prefix, string itemComment, TBuff tb, bool itemDiscomposable, string itemBpBackCode, int _season, Material itemMainMat, string _grp1, string _grp2, string _grp3, int starRate)
     : base(itemCode, TYPE.CHARACTER, itemName, itemIcon, ct, 0, itemTakeoffable, SLOT.CHARACTER,itemComment,tb,itemDiscomposable,itemBpBackCode,-1,UPGRADE_CATEGORY.NONE,basic: false,starRate)
 {
     gender  = _gender;
     prefix  = _prefix;
     season  = _season;
     mainMat = itemMainMat;
     grp1    = _grp1;
     grp2    = _grp2;
     grp3    = _grp3;
 }