示例#1
0
 void Start()
 {
     _fight = Camera.main.GetComponent<FightController>();
     _character = GlobalCharacter.player;
     _children = transform.GetChild(0).gameObject;
     SetCurrent(false);
 }
示例#2
0
 public static FightController getInstance()
 {
     if (instance == null)
     {
         instance = new FightController();
     }
     return instance;
 }
    void Awake()
    {
        DontDestroyOnLoad(gameObject);  //不自动销毁,保存到下一个场景
        instance  = this;
        playerPos = GameObject.Find("player_pos").transform;
        if (PhotonEngine.Instance.role.IsMan)
        {
            playerPrefab = "man_player";
        }
        else
        {
            playerPrefab = "girl_player";
        }
        GameObject go = (GameObject)Instantiate(Resources.Load("Player_village/" + playerPrefab));  //加载角色

        go.transform.position = playerPos.position;
        fightController       = GetComponent <FightController>();
        fightController.OnSyncPositionAndRotation += OnSyncPositionAndRotation;
        fightController.OnSyncMoveAnimation       += OnSyncMoveAnimation;
        fightController.OnSyncPlayerAnimation     += OnSyncPlayerAnimation;
    }
示例#4
0
    public bool Perform(Unit source, Vector2 coordinates)
    {
        if (source.CheckResources(cost) && source.actionPoints >= actionCost)
        {
            FightController controller      = FindObjectOfType <FightController>();
            bool            actionSuccesful = false;
            switch (action)
            {
            case AbilityType.GATHER:
                break;

            case AbilityType.ATTACK:
                Unit target;
                foreach (Unit possibleTarget in controller.units)
                {
                    if (coordinates == possibleTarget.coordinates)
                    {
                        if (possibleTarget.ally != source.ally)
                        {
                            target          = possibleTarget;
                            actionSuccesful = true;
                            break;
                        }
                    }
                }
                break;

            case AbilityType.CREATE:
                break;

            case AbilityType.CRAFT:
                break;
            }
            return(actionSuccesful);
        }
        else
        {
            return(false);
        }
    }
示例#5
0
 public PointBase(string sign, string fract, float posX, float posY, FightController gameInstance, int index=-1)
 {
     game = gameInstance;
     callsign = sign;
     fraction = fract;
     positionX = posX;
     positionY = posY;
     massiveIndex = index;
     if(fraction=="enemy")
     {
         strength = SharedVars.Inst.enemyStrength;
         intellect = SharedVars.Inst.enemyIntellect;
         social = SharedVars.Inst.enemySocial;
         health = SharedVars.Inst.enemyHealth;
     } else if(fraction == "object")
     {
         bonusStrength = Random.Range(0,10);
         bonusIntellect = Random.Range(0,10);
         bonusSocial = Random.Range(0,10);
         bonusHealth = Random.Range(0,10);
     }
 }
示例#6
0
    public override void Activate(IBlackBox box, GameObject target)
    {
        this.defaultBrain = box;
        this.brain        = box;
        this.brain.ResetState();
        this.IsRunning = true;
        this.Target    = target;
        FightController opponent = Target.GetComponent <FightController>();

        OpponentHealth = Target.GetComponent <HealthScript>();
        if (opponent != null)
        {
            Opponent = opponent;
        }
        if (OpponentHealth != null)
        {
            OpponentHealth.Died += new global::HealthScript.DeathEventHandler(OpponentHealth_Died);
        }
        if (HealthScript != null)
        {
            HealthScript.Died += new global::HealthScript.DeathEventHandler(HealthScript_Died);
        }
    }
示例#7
0
 public PointBase(string sign, string fract, float posX, float posY, FightController gameInstance, int index = -1)
 {
     game         = gameInstance;
     callsign     = sign;
     fraction     = fract;
     positionX    = posX;
     positionY    = posY;
     massiveIndex = index;
     if (fraction == "enemy")
     {
         strength  = SharedVars.Inst.enemyStrength;
         intellect = SharedVars.Inst.enemyIntellect;
         social    = SharedVars.Inst.enemySocial;
         health    = SharedVars.Inst.enemyHealth;
     }
     else if (fraction == "object")
     {
         bonusStrength  = Random.Range(0, 10);
         bonusIntellect = Random.Range(0, 10);
         bonusSocial    = Random.Range(0, 10);
         bonusHealth    = Random.Range(0, 10);
     }
 }
示例#8
0
    /// <summary>
    /// 获取试题
    /// </summary>
    /// <param name="symbolID"></param>
    /// <param name="digitID"></param>
    /// <param name="operandID"></param>
    /// <returns></returns>
    public List <int> GetQuestionInstance()
    {
        List <int> instance = new List <int>();

        switch (CurCategoryInstance.symbolID)
        {
        case SymbolID.Addition:
            instance = GetAdditionInstance();
            break;

        case SymbolID.Subtraction:
            instance = GetSubtractionInstance();
            break;

        case SymbolID.Multiplication:
            instance = GetMultiplicationInstance();
            break;

        case SymbolID.Division:
            instance = GetDivisionInstance();
            break;
        }
        return(instance);
    }
示例#9
0
 // Update is called once per frame
 void Update()
 {
     if (aggresive && target == null)
     {
         Collider[] colliders = Physics.OverlapSphere(transform.position, visibleRange);
         foreach (Collider c in colliders)
         {
             if (c.gameObject == gameObject)
             {
                 continue;
             }
             FightController f = c.GetComponent <FightController>();
             if (f != null)
             {
                 target = f.transform;
                 break;
             }
         }
     }
     if (target != null)
     {
         if (Vector3.Distance(transform.position, target.position) < fc.attackRange)
         {
             fc.attack(target);
         }
         else
         {
             Vector3 direction = (target.position - Vector3.up - transform.position).normalized;
             chm.move(direction);
         }
         if (Vector3.Distance(transform.position, target.position) > visibleRange)
         {
             target = null;
         }
     }
 }
示例#10
0
 //遭受攻击
 static public void Atkend()
 {
     _hpObj.text = MineFightData.getInstance().getHp().ToString();
     FightController.getInstance().RightToPlay = FightController.RIGHTTOPLAY.MINE;
 }
示例#11
0
    public override void StartAttack(FightController fightController)
    {
        AttackTarget = fightController.GetEnemyCharacter(Owner);

        Owner.m_UICharacter.BodyObject.transform.GetChild(0)
        .GetComponent <UnityArmatureComponent>()
        .animation.Play("attack_01", 1);

        switch (SkillId)
        {
        case 1:
            ShowTargetSkillEffect(fightController, "wx_tjjz_tx");
            break;

        case 2:
            ShowTargetSkillEffect(fightController, "wx_tjdz_tx");
            break;

        case 3:
            ShowSelfSkillEffect(fightController, "wx_cyjq_tx");
            break;

        case 4:
            ShowTargetSkillEffect(fightController, "wx_hxdq_tx");
            break;

        case 5:
            ShowTargetSkillEffect(fightController, "wx_djzx_tx");
            break;

        case 6:
            ShowTargetSkillEffect(fightController, "wx_ddzx_tx");
            break;

        case 7:
            ShowSelfSkillEffect(fightController, "wx_lcjf_tx");
            break;

        case 8:
            ShowSelfSkillEffect(fightController, "wx_lkdf_tx");
            break;
        }
        fightController.FightView.m_UI.m_LeftSkillTriggerPoint.visible  = true;
        fightController.FightView.m_UI.m_RightSkillTriggerPoint.visible = true;
        if (Owner.TeamType == FightController.ETeamType.LeftSide)
        {
            fightController.FightView.m_UI.GetTransition("t0").Play();
        }
        else
        {
            fightController.FightView.m_UI.GetTransition("t1").Play();
        }

        var sequence = DOTween.Sequence();

        sequence.Append(DOTween.To(() => { return(1f); }, (float val) => { }, 1, 0.6f));
        for (int i = 0; i < AttackCount; i++)
        {
            sequence.AppendCallback(DoHurt);
            sequence.Append(DOTween.To(() => { return(1f); }, (float val) => { }, 1, 0.1f));
        }
        sequence.Append(DOTween.To(() => { return(1f); }, (float val) => { }, 1, 1f));
        sequence.AppendCallback(() =>
        {
            OnAttackFinish();
            Owner.m_UICharacter.BodyObject.transform.GetChild(0)
            .GetComponent <UnityArmatureComponent>()
            .animation.Play("idel");
            fightController.FightView.m_UI.m_LeftSkillTriggerPoint.visible  = false;
            fightController.FightView.m_UI.m_RightSkillTriggerPoint.visible = false;
        });
    }
示例#12
0
 void Start()
 {
     FightController fightController = (GameObject.FindWithTag("FightController")).GetComponent <FightController>();
 }
 private void Awake()
 {
     instance = this;
 }
示例#14
0
 void Start()
 {
     _fight = Camera.main.GetComponent <FightController>();
 }
示例#15
0
    protected virtual void onAwake()
    {
        gameController = gameObject.GetComponent<FightController>();

        callsign0.text = SharedVars.Inst.callsign0;
        callsign1.text = SharedVars.Inst.callsign1;
        callsign2.text = SharedVars.Inst.callsign2;
        callsign3.text = SharedVars.Inst.callsign3;

        onCanalClick(3);
    }
示例#16
0
 void Start()
 {
     controller = FindObjectOfType <FightController>();
 }
示例#17
0
 public void Start()
 {
     controller = FindObjectOfType <FightController>();
     controller.RegisterUnit(this);
 }
示例#18
0
 void Start()
 {
     this.lastSpawn       = float.MinValue;
     this.levelController = FightController.FindMe();
 }
示例#19
0
 void Start()
 {
     controller   = FindObjectOfType <FightController>();
     currentCombo = idleCombo;
 }
示例#20
0
 public void SubscribeFightController(FightController fightController)
 {
     FightController = fightController;
     FightController.FightStarted  += OnFightStarted;
     FightController.FightFinished += OnFightFinished;
 }
    public void SendSlotControllerToObject(int indexSpanObject)
    {
        var objectInstantiate = Instantiate(((NetworkRoomManagerExt)NetworkManager.singleton).objectHand, rightHand.transform);

        if (NetworkServer.active)
        {
            NetworkServer.Spawn(objectInstantiate);
        }
        FightController fightController = objectInstantiate.transform.root.GetComponent <FightController>();



        if (((NetworkRoomManagerExt)NetworkManager.singleton).scriptableObjectToMirror[indexSpanObject] is WeaponeObjectController)
        {
            WeaponeObjectController weaponeObjectController = (WeaponeObjectController)((NetworkRoomManagerExt)NetworkManager.singleton).scriptableObjectToMirror[indexSpanObject];
            var objectWeaponeInstantiate = Instantiate(weaponeObjectController.ReturnWeaponeHand(), objectInstantiate.transform);
            if (NetworkServer.active)
            {
                NetworkServer.Spawn(objectWeaponeInstantiate);
            }

            //Set Speed Player with gun
            // PlayerController.RestetCalculateVariable();
            PlayerController.SetSpeedGunAimProperties(weaponeObjectController.ReturnSpeedWalikingPlayer(), weaponeObjectController.ReturnSpeedRotationPlayer());
            PlayerController.SetDefaultSpeedToVariableCalculate();

            //Set Properties Weapone
            objectWeaponeInstantiate.transform.localPosition    = weaponeObjectController.ReturnPositionInstantiate(characterSelectPerks);
            objectWeaponeInstantiate.transform.localEulerAngles = weaponeObjectController.ReturnRotationInstantiate(characterSelectPerks);
            objectWeaponeInstantiate.transform.localScale       = weaponeObjectController.ReturnScaleInstantiate(characterSelectPerks);

            //Set ScriptableObject In Script Fight
            fightController.SetHandObjectController(null);
            fightController.SetWeaponeObjectController(weaponeObjectController);

            //Set ObjectHand and ObjectInHandChild
            fightController.SetObjcetHandChild(objectWeaponeInstantiate);
            fightController.SetObjectHand(objectInstantiate);
        }
        else if (((NetworkRoomManagerExt)NetworkManager.singleton).scriptableObjectToMirror[indexSpanObject] is HandObjectController)
        {
            HandObjectController handObjectController = (HandObjectController)((NetworkRoomManagerExt)NetworkManager.singleton).scriptableObjectToMirror[indexSpanObject];
            var objectHandInstantiate = Instantiate(handObjectController.ReturnObjectInHandPref(), objectInstantiate.transform);
            if (NetworkServer.active)
            {
                NetworkServer.Spawn(objectHandInstantiate);
            }


            //Set Speed Player With object in hand
            PlayerController.SetSpeedDefProperties(handObjectController.ReturnSpeedWalikingPlayer(), handObjectController.ReturnSpeedRotationPlayer());
            PlayerController.SetDefaultSpeedToVariableCalculate();

            //Set Properties Object
            objectHandInstantiate.transform.localPosition    = handObjectController.ReturnPositionInstantiate(characterSelectPerks);
            objectHandInstantiate.transform.localEulerAngles = handObjectController.ReturnRotationInstantiate(characterSelectPerks);
            objectHandInstantiate.transform.localScale       = handObjectController.ReturnScaleInstantiate(characterSelectPerks);

            //Set ScriptableObject In Script Fight
            fightController.SetWeaponeObjectController(null);
            fightController.SetHandObjectController(handObjectController);

            //Set ObjectHand and ObjectInHandChild
            fightController.SetObjcetHandChild(objectHandInstantiate);
            fightController.SetObjectHand(objectInstantiate);
        }
    }
示例#22
0
        private void MainServerController_FigthCreated(MainServerController mainServerController, FightController fightController, EnemyDef enemyDef)
        {
            fightController.FightEnd += FightController_FightEnd;
            _bot = new FightBot(_client.Login, _isWolf, fightController);

            fightController.KnifeThrow += FightController_KnifeThrow;
            fightController.SendReady();
        }
示例#23
0
 public virtual void StartAttack(FightController fightController)
 {
 }
示例#24
0
 // Use this for initialization
 void Start()
 {
     fightController = GameController.Instance.GetComponent <FightController>();
     fightController.OnSyncGameState += OnSyncGameState;
 }
示例#25
0
    void Start()
    {
        _skills = new GameSkill[4];
        _itens = new GameItem[4];
        _buttons = new GameObject[4];
        gameObject.SetActive(false);

        _fight = Camera.main.GetComponent<FightController>();
    }
示例#26
0
 void Start()
 {
     _fight = Camera.main.GetComponent<FightController>();
 }