Example #1
0
 // Start is called before the first frame update
 void Start()
 {
     attrManager  = GetComponent <AttributesManager>();
     networkInput = GetComponent <NetworkInput>();
     backpack     = new Backpack(gameObject, backpackSize);
     PickUpEvent += OnPickUp;
 }
Example #2
0
    void Start()
    {
        am = com.p.am;

        bar_go = GameObject.Find("bar_local");

        big_fire_ring_go = Resources.Load <GameObject> ("big_fire_ring/big_fire_ring");
    }
Example #3
0
 private void ChangeToPeople(AttributesManager originalGhostAttrManager)
 {
     originalGhostAttrManager.faction = PlayerFaction.People;
     originalGhostAttrManager.RemoveAllItemRevise();
     foreach (ReviseInfo tempReviseInfo in changeToPeopleRevises)
     {
         long reviseReceipt = originalGhostAttrManager.AddItemRevise(tempReviseInfo);
     }
 }
Example #4
0
        public Player(Texture2D texture)
            : base(texture)
        {
            BaseAttributes = new Attributes();

            AttributeModifiers = new List <Attributes>();

            _attributeManager = new AttributesManager(AttributeModifiers);
        }
Example #5
0
    private void CaseSwitchFaction(object[] unPackDatas)
    {
        int originalGhostPlayerNo            = (int)unPackDatas[1];
        int originalPeoplePlayerNo           = (int)unPackDatas[2];
        AttributesManager originalGhostAttr  = GetPlayerGOByNetCode(originalGhostPlayerNo).GetComponent <AttributesManager>();
        AttributesManager originalPeopleAttr = GetPlayerGOByNetCode(originalPeoplePlayerNo).GetComponent <AttributesManager>();

        GameControler.ins.SwitchFaction(originalGhostAttr, originalPeopleAttr);
    }
Example #6
0
    public void SwitchFaction(AttributesManager originalGhostAttrManager, AttributesManager originalPeopleAttrManager)
    {
        SwitchFactionStartEvent?.Invoke();
        StartCoroutine(IEnumeratorHelper.After(() => { SwitchFactionCompleteEvent?.Invoke(); }, switchFactionUseTime));
        ChangeToPeople(originalGhostAttrManager);

        ChangeToGhost(originalPeopleAttrManager);
        AddScore(originalGhostAttrManager.gameObject);
    }
Example #7
0
    public bool TryUse(AttributesManager userAttrManager)
    {
        bool canUse = CanUse(userAttrManager);

        if (canUse)
        {
            Use(userAttrManager);
        }
        return(canUse);
    }
Example #8
0
 public void Use(AttributesManager userAttrManager)
 {
     AttributesManager[] allEffectAttrManager = GetAllEffectAttrManager(userAttrManager);
     foreach (AttributesManager tempAttrManager in allEffectAttrManager)
     {
         myItemGroup.itemInfo.Use(tempAttrManager);
     }
     myItemGroup.itemCount--;
     Reflash();
 }
Example #9
0
 public Backpack(GameObject ownerGO, int backpackSize)
 {
     this.ownerGO      = ownerGO;
     attrManager       = ownerGO.GetComponent <AttributesManager>();
     this.backpackSize = backpackSize;
     grids             = new BackpackGrid[backpackSize];
     for (int i = 0; i < backpackSize; i++)
     {
         grids[i] = new BackpackGrid(this);
     }
 }
Example #10
0
    // Start is called before the first frame update
    void Start()
    {
        attrManager     = GetComponent <AttributesManager>();
        activityManager = GetComponent <ActivityManager>();

        managedParts = transform.GetComponentsInChildren <Part>();
        foreach (Part tempPart in managedParts)
        {
            tempPart.partManager = this;
            tempPart.TouchEvent += OnTouch;
        }
    }
Example #11
0
    private void ChangeToGhost(AttributesManager originalPeopleAttrManager)
    {
        originalPeopleAttrManager.faction = PlayerFaction.Ghost;
        originalPeopleAttrManager.RemoveAllItemRevise();
        foreach (ReviseInfo tempReviseInfo in changeToGhostRevises)
        {
            long reviseReceipt = originalPeopleAttrManager.AddItemRevise(tempReviseInfo);
        }
        ActivityManager originalPeopleActivityManager = originalPeopleAttrManager.GetComponent <ActivityManager>();

        originalPeopleActivityManager.enabled = false;
        StartCoroutine(IEnumeratorHelper.After(() => { originalPeopleActivityManager.enabled = true; }, switchFactionUseTime));
    }
Example #12
0
    // 通知所有玩家哪两位玩家进行身份调换
    public void SwitchFaction(AttributesManager originalGhostAttrManager, AttributesManager originalPeopleAttrManager)
    {
        int originalGhostPlayerNo  = EMPTY_NETCODE;
        int originalPeoplePlayerNo = EMPTY_NETCODE;

        if (Client.ins.TryGetNetCodeByPlayerGO(originalGhostAttrManager.gameObject, out originalGhostPlayerNo) &&
            Client.ins.TryGetNetCodeByPlayerGO(originalPeopleAttrManager.gameObject, out originalPeoplePlayerNo))
        {
            // 通知交换身份
            sendBuffer = NetworkCommunicateHelper.ToPack(out sendBufferSize, "SwitchFaction", originalGhostPlayerNo, originalPeoplePlayerNo);
            SendToEveryPlayer(hostID, unreliableChannelID, sendBuffer, sendBufferSize, out error);
        }
    }
Example #13
0
    public static AttributesManager[] FindRangePlayer(PlayerFaction targetFaction, Vector3 center, float radius)
    {
        List <AttributesManager> rangeTeammateList = new List <AttributesManager>();

        AttributesManager[] teammateAttrManager = AttributesManager.GetFactionAllAttrManager(targetFaction);
        float sqrRadius = Mathf.Sqrt(radius);

        foreach (AttributesManager tempTeammate in teammateAttrManager)
        {
            Vector3 centerToTeammate = tempTeammate.transform.position - center;
            float   sqrMagnitude     = centerToTeammate.sqrMagnitude;
            if (sqrMagnitude <= sqrRadius)
            {
                rangeTeammateList.Add(tempTeammate);
            }
        }
        return(rangeTeammateList.ToArray());
    }
Example #14
0
    public bool CanUse(AttributesManager userAttrManager)
    {
        bool canUse = false;

        if (!isEmpty)
        {
            Vector3       position  = userAttrManager.transform.position;
            PlayerFaction myFaction = userAttrManager.faction;
            switch (myItemGroup.itemInfo.effectGroup)
            {
            case EffectGroup.MySelf:
            case EffectGroup.RandomTeammate:
            case EffectGroup.AllTeammate:
            case EffectGroup.RandomEnemy:
            case EffectGroup.AllEnemy:
                canUse = true;
                break;

            case EffectGroup.OneNearbyTeammate:
                canUse = AttributesManager.FindNearbyPlayer(myFaction, position, myItemGroup.itemInfo.radius) != null;
                break;

            case EffectGroup.RangeRandomTeammate:
            case EffectGroup.RangeTeammate:
                canUse = AttributesManager.FindRangePlayer(myFaction, position, myItemGroup.itemInfo.radius).Length > 0;
                break;

            case EffectGroup.OneNearbyEnemy:
                canUse = AttributesManager.FindNearbyPlayer(AttributesManager.GetEnemyFaction(myFaction), position, myItemGroup.itemInfo.radius) != null;
                break;

            case EffectGroup.RangeRandomEnemy:
            case EffectGroup.RangeEnemy:
                canUse = AttributesManager.FindRangePlayer(AttributesManager.GetEnemyFaction(myFaction), position, myItemGroup.itemInfo.radius).Length > 0;
                break;
            }
        }
        return(canUse);
    }
Example #15
0
    public static AttributesManager FindNearbyPlayer(PlayerFaction targetFaction, Vector3 center, float radius)
    {
        AttributesManager resultAttrManager = null;

        AttributesManager[] teammateAttrManager = GetFactionAllAttrManager(targetFaction);
        bool  onePeopleFaction = teammateAttrManager.Length <= 1;
        float currentSqrRadius = Mathf.Sqrt(radius);

        foreach (AttributesManager tempTeammate in teammateAttrManager)
        {
            Vector3 centerToTeammate = tempTeammate.transform.position - center;
            float   sqrMagnitude     = centerToTeammate.sqrMagnitude;
            if (!onePeopleFaction && sqrMagnitude != 0 && sqrMagnitude <= currentSqrRadius)
            {
                resultAttrManager = tempTeammate;
                currentSqrRadius  = sqrMagnitude;
            }
            else if (onePeopleFaction)
            {
                resultAttrManager = tempTeammate;
            }
        }
        return(resultAttrManager);
    }
Example #16
0
 public ActivityBing(GameObject ownerGO, ActivityBaseInfo activityInfo) : base(ownerGO, activityInfo)
 {
     attrManager = ownerGO.GetComponent <AttributesManager>();
     partManager = ownerGO.GetComponent <PartManager>();
 }
Example #17
0
 public override void Use(AttributesManager effectAttrManager)
 {
     base.Use(effectAttrManager);
     long receipt = effectAttrManager.AddItemRevise(reviseAttr, reviseValue, reviseMode, computeMode, duration);
 }
Example #18
0
 public override void Use(AttributesManager effectAttrManager)
 {
     base.Use(effectAttrManager);
     effectAttrManager.transform.position = GetPosition();
 }
Example #19
0
    // 获得将被影响的AttributesManager
    private AttributesManager[] GetAllEffectAttrManager(AttributesManager userAttrManager)
    {
        PlayerFaction myFaction    = userAttrManager.faction;
        PlayerFaction enemyFaction = AttributesManager.GetEnemyFaction(myFaction);
        Vector3       position     = userAttrManager.transform.position;
        float         radius       = myItemGroup.itemInfo.radius;

        List <AttributesManager> effectAttrManagerList = new List <AttributesManager>();

        switch (myItemGroup.itemInfo.effectGroup)
        {
        case EffectGroup.MySelf:
            effectAttrManagerList.Add(userAttrManager);
            break;

        case EffectGroup.RandomTeammate:
            AttributesManager[] teammates = AttributesManager.GetFactionAllAttrManager(myFaction);
            effectAttrManagerList.Add(teammates[Random.Range(0, teammates.Length)]);
            break;

        case EffectGroup.OneNearbyTeammate:
            AttributesManager nearbyTeammate = AttributesManager.FindNearbyPlayer(myFaction, position, radius);
            if (nearbyTeammate != null)
            {
                effectAttrManagerList.Add(nearbyTeammate);
            }
            break;

        case EffectGroup.RangeRandomTeammate:
            AttributesManager[] rangeTeamates = AttributesManager.FindRangePlayer(myFaction, position, radius);
            effectAttrManagerList.Add(rangeTeamates[Random.Range(0, rangeTeamates.Length)]);
            break;

        case EffectGroup.RangeTeammate:
            effectAttrManagerList.AddRange(AttributesManager.FindRangePlayer(myFaction, position, radius));
            break;

        case EffectGroup.AllTeammate:
            effectAttrManagerList.AddRange(AttributesManager.GetFactionAllAttrManager(myFaction));
            break;

        case EffectGroup.RandomEnemy:
            AttributesManager[] enemys = AttributesManager.GetFactionAllAttrManager(enemyFaction);
            effectAttrManagerList.Add(enemys[Random.Range(0, enemys.Length)]);
            break;

        case EffectGroup.OneNearbyEnemy:
            AttributesManager nearbyEnemy = AttributesManager.FindNearbyPlayer(enemyFaction, position, radius);
            if (nearbyEnemy != null)
            {
                effectAttrManagerList.Add(nearbyEnemy);
            }
            break;

        case EffectGroup.RangeRandomEnemy:
            AttributesManager[] rangeEnemys = AttributesManager.FindRangePlayer(enemyFaction, position, radius);
            effectAttrManagerList.Add(rangeEnemys[Random.Range(0, rangeEnemys.Length)]);
            break;

        case EffectGroup.RangeEnemy:
            effectAttrManagerList.AddRange(AttributesManager.FindRangePlayer(enemyFaction, position, radius));
            break;

        case EffectGroup.AllEnemy:
            effectAttrManagerList.AddRange(AttributesManager.GetFactionAllAttrManager(enemyFaction));
            break;
        }
        return(effectAttrManagerList.ToArray());
    }
Example #20
0
 public ActivityMove(GameObject ownerGO) : base(ownerGO)
 {
     attrManager = ownerGO.GetComponent <AttributesManager>();
 }
Example #21
0
 private void OnSpawnedLocalPlayer()
 {
     attrManager = Client.ins.GetLocalPlayerGO().GetComponent <AttributesManager>();
     attrManager.CurrentSPChangeEvent += OnCurrentSPChange;
 }
Example #22
0
 public virtual void Use(AttributesManager effectAttrManager)
 {
 }
Example #23
0
    private void values2obj(PigeonCms.AttributeValue obj)
    {
        var valueTranslation = new Dictionary<string, string>();

        if (ChkInLang.Checked)
        {
            foreach (KeyValuePair<string, string> item in Config.CultureList)
            {
                TextBox t1 = new TextBox();
                t1 = (TextBox)PanelTitle.FindControl("TxtTitle" + item.Value);
                valueTranslation.Add(item.Key, t1.Text);
            }
        }
        else
        {
            TextBox t1 = new TextBox();
            string defaultLang = Config.CultureList.FirstOrDefault(x => x.Key == Config.CultureDefault).Value;
            t1 = (TextBox)PanelTitle.FindControl("TxtTitle" + defaultLang);
            foreach (KeyValuePair<string, string> item in Config.CultureList)
            {
                valueTranslation.Add(item.Key, t1.Text);
            }
        }

        obj.ValueString = toJson(valueTranslation);

        if (base.CurrentId == 0)
        {
            // have to save attribute before
            var a = new PigeonCms.Attribute();
            a.AllowCustomValue = ChkCustomValue.Checked;
            a.Name = TxtName.Text;
            a = new AttributesManager().Insert(a);
            base.CurrentId = a.Id;
        }

        obj.AttributeId = base.CurrentId;
    }
Example #24
0
 public ActivityReachOut(GameObject ownerGO, ActivityBaseInfo activityInfo) : base(ownerGO, activityInfo)
 {
     attrManager = ownerGO.GetComponent<AttributesManager>();
     reachOutInfo = activityInfo as ActivityReachOutInfo;
     reachOutIKTran = ownerGO.transform.Find(reachOutInfo.IKGameObjectName);
 }
Example #25
0
    protected void BtnSave_Click(object sender, EventArgs e)
    {
        LblErr.Text = "";
        LblOk.Text = "";

        try
        {
            PigeonCms.Attribute o1 = new PigeonCms.Attribute();
            if (base.CurrentId == 0)
            {
                form2obj(o1);
                o1 = new AttributesManager().Insert(o1);
            }
            else
            {
                o1 = new AttributesManager().GetByKey(base.CurrentId);  //precarico i campi esistenti e nn gestiti dal form
                form2obj(o1);
                new AttributesManager().Update(o1);
            }
            Grid1.DataBind();
            LblOk.Text = RenderSuccess(Utility.GetLabel("RECORD_SAVED_MSG"));
            MultiView1.ActiveViewIndex = 0;
        }
        catch (Exception e1)
        {
            LblErr.Text = RenderError(Utility.GetLabel("RECORD_ERR_MSG") + "<br />" + e1.ToString());
        }
        finally
        {
        }
    }
Example #26
0
    protected void Grid1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {

            var item = new AttributeSet();
            item = (AttributeSet)e.Row.DataItem;

            LinkButton LnkTitle = (LinkButton)e.Row.FindControl("LnkTitle");
            LnkTitle.Text = "<i class='fa fa-pgn_edit fa-fw'></i>";
            LnkTitle.Text += Utility.Html.GetTextPreview(item.Name, 50, "");
            if (string.IsNullOrEmpty(LnkTitle.Text))
                LnkTitle.Text += Utility.GetLabel("NO_VALUE", "<no value>");
            if (Roles.IsUserInRole("debug"))
                LnkTitle.Text += " [" + item.Id.ToString() + "]";

            // Get all selected attributes
            string selectedAttributes = "";
            var aman = new AttributesManager();
            foreach (var attributeId in item.AttributesList)
            {
                selectedAttributes += " - <i>" + aman.GetByKey(attributeId).Name  + "<i>";
            }

            selectedAttributes = selectedAttributes.Substring(2);

            Literal LitAttributesSelected = (Literal)e.Row.FindControl("LitAttributesSelected");
            LitAttributesSelected.Text = selectedAttributes;

        }
    }