Esempio n. 1
0
 void Start()
 {
     characterAgent = GetComponent <CharacterAgent>();
     characterStats = GetComponent <CharacterStats>();
     agent          = GetComponent <NavMeshAgent>();
     animator       = GetComponent <Animator>();
 }
Esempio n. 2
0
        public bool Setup(Episode pepisode)
        {
            Random rand = new Random();

            // Create an agent for each characters for given episode
            foreach (Character character in pepisode.Characters)
            {
                CharacterAgent ca = new CharacterAgent(character);
                ca.Weight        = (float)(character.Occ * 100f) / (float)pepisode.LinesCount;
                ca.Body.Position = new Math.Vector3(rand.Next(-10, 10), rand.Next(-10, 10), rand.Next(-10, 10));
                Agents.Add(ca);
            }

            return(true);
        }
Esempio n. 3
0
    // Start is called before the first frame update
    void Start()
    {
        Vector3 spawnPoint01 = new Vector3(16.0f, 0.4f, 10.3f);
        Vector3 spawnPoint02 = new Vector3(16.9f, 0.4f, 10.3f);
        Vector3 spawnPoint03 = new Vector3(16.0f, 0.4f, 8.8f);
        Vector3 spawnPoint04 = new Vector3(16.9f, 0.4f, 8.8f);

        character01       = Instantiate(characterPrefab, spawnPoint01, Quaternion.identity);
        character02       = Instantiate(characterPrefab2, spawnPoint02, Quaternion.identity);
        character03       = Instantiate(characterPrefab3, spawnPoint03, Quaternion.identity);
        character04       = Instantiate(characterPrefab4, spawnPoint04, Quaternion.identity);
        character01.name  = "Player 1";
        character02.name  = "Player 2";
        character03.name  = "Player 3";
        character04.name  = "Player 4";
        selectedCharacter = character01;
        characterAgent    = character01.GetComponent <CharacterAgent>();
        rtscamera         = Camera.main.GetComponent <RTS_Camera>();
    }
Esempio n. 4
0
    private void Awake()
    {
        _navMeshAgent = GetComponent <NavMeshAgent>();
        _agent        = GetComponent <CharacterAgent>();

        if (useBioCrowds)
        {
            _agent.enabled        = true;
            _navMeshAgent.enabled = false;
        }
        else
        {
            _navMeshAgent.updateRotation = true;
            _agent.enabled        = false;
            _navMeshAgent.enabled = true;
        }

        animator = GetComponent <Animator>();

        if (specialCompleteItem != null)
        {
            specialCompleteItem.SetActive(false);
        }
    }
        private GameEntity CreateCharacter(uint id, uint parentId, int characterId, int campId, Vector3 position, float rotation)
        {
            CharacterConfig config = CharacterConfigProvider.Instance.GetCharacterConfig(characterId);

            if (null != config)
            {
                var e = _contexts.game.CreateEntity();
                e.AddId(id);

                e.AddParent(parentId);

                // res
                uint resId = IdSystem.Instance.GenId(IdEnum.Resource);
                Services.Instance.ViewService.LoadAsset(e, resId, config.Model, config.Scale, position);
                e.AddResource(resId);

                // animation
                e.AddAnimation(config.ActionId, config.ActionPrefix);

                // movement
                e.AddMovement(Vector3.zero);
                e.AddPosition(position);
                e.AddRotation(rotation);

                // AI
                if (!string.IsNullOrEmpty(config.AIScript))
                {
                    var agent = new CharacterAgent();
                    agent.Init(id);
                    bool ret = agent.btload(config.AIScript);
                    agent.btsetcurrent(config.AIScript);
                    e.AddAI(agent);
                }

                // skill
                e.AddSkill(null, null);
                e.AddBuff(new Dictionary <int, List <BuffInstanceInfo> >(), new List <StartBuffParam>());

                List <SkillInfo> skills = new List <SkillInfo>();
                foreach (var skill in config.Skills)
                {
                    SkillInfo skillInfo = new SkillInfo
                    {
                        SkillId = skill,
                    };
                    skills.Add(skillInfo);
                }
                e.AddSkillConfig(skills);

                // camp
                e.AddCamp(campId);

                AttributeConfig attrConfig = AttributeConfigProvider.Instance.GetAttributeConfig(config.AttrId);
                if (null != attrConfig)
                {
                    AttributeData attrData = new AttributeData();
                    attrData.SetAbsoluteByConfig(attrConfig);
                    e.AddAttr(config.AttrId, attrData);
                    e.ReplaceHp(attrData.HpMax);

                    Services.Instance.HudService.AddHudHead(e);
                }

                e.AddBorn(Contexts.sharedInstance.input.time.Value);

                return(e);
            }
            return(null);
        }
Esempio n. 6
0
 public CharcterSmokebombComponent(CharacterAgent agent) : base(agent)
 {
 }
 public CharacterAttackComponent(CharacterAgent agent) : base(agent)
 {
 }
Esempio n. 8
0
 public CharacterAnimationComponent(CharacterAgent agent) : base(agent)
 {
 }
Esempio n. 9
0
        public override bool Load()
        {
            AgentMeta.TotalSignature = 3403492403;

            AgentMeta meta;

            // behaviac.Agent
            meta = new AgentMeta(24743406);
            AgentMeta._AgentMetas_[2436498804] = meta;
            meta.RegisterMethod(1045109914, new CAgentStaticMethodVoid <string>(delegate(string param0) { behaviac.Agent.LogMessage(param0); }));
            meta.RegisterMethod(2521019022, new CMethod_behaviac_Agent_VectorAdd());
            meta.RegisterMethod(2306090221, new CMethod_behaviac_Agent_VectorClear());
            meta.RegisterMethod(3483755530, new CMethod_behaviac_Agent_VectorContains());
            meta.RegisterMethod(505785840, new CMethod_behaviac_Agent_VectorLength());
            meta.RegisterMethod(502968959, new CMethod_behaviac_Agent_VectorRemove());

            // CharacterAgent
            meta = new AgentMeta(1867616810);
            AgentMeta._AgentMetas_[3209652550] = meta;
            meta.RegisterMemberProperty(3920670722, new CMemberProperty <uint>("m_CurTargetId", delegate(Agent self, uint value) { ((CharacterAgent)self)._set_m_CurTargetId(value); }, delegate(Agent self) { return(((CharacterAgent)self)._get_m_CurTargetId()); }));
            meta.RegisterMemberProperty(3197991956, new CMemberProperty <uint>("m_ExternalTargetId", delegate(Agent self, uint value) { ((CharacterAgent)self)._set_m_ExternalTargetId(value); }, delegate(Agent self) { return(((CharacterAgent)self)._get_m_ExternalTargetId()); }));
            meta.RegisterMethod(1672911688, new CAgentMethod <bool>(delegate(Agent self) { return(((CharacterAgent)self).CanUseSkill()); }));
            meta.RegisterMethod(4213484053, new CAgentMethod <float>(delegate(Agent self) { return(((CharacterAgent)self).DistanceToTarget()); }));
            meta.RegisterMethod(211686285, new CAgentMethodVoid(delegate(Agent self) { ((CharacterAgent)self).EscapeFromTarget(); }));
            meta.RegisterMethod(3148996176, new CAgentMethodVoid(delegate(Agent self) { ((CharacterAgent)self).FaceToTarget(); }));
            meta.RegisterMethod(1045109914, new CAgentStaticMethodVoid <string>(delegate(string param0) { CharacterAgent.LogMessage(param0); }));
            meta.RegisterMethod(1793645156, new CAgentMethod <behaviac.EBTStatus>(delegate(Agent self) { return(((CharacterAgent)self).MoveToTarget()); }));
            meta.RegisterMethod(605181692, new CAgentMethodVoid <string>(delegate(Agent self, string animName) { ((CharacterAgent)self).PlayAnimation(animName); }));
            meta.RegisterMethod(2313437402, new CAgentMethodVoid(delegate(Agent self) { ((CharacterAgent)self).StopMove(); }));
            meta.RegisterMethod(3934788799, new CAgentMethod <uint>(delegate(Agent self) { return(((CharacterAgent)self).TryFindTarget()); }));
            meta.RegisterMethod(2129264648, new CAgentMethodVoid <int>(delegate(Agent self, int SkillId) { ((CharacterAgent)self).UseSkill(SkillId); }));
            meta.RegisterMethod(2521019022, new CMethod_behaviac_Agent_VectorAdd());
            meta.RegisterMethod(2306090221, new CMethod_behaviac_Agent_VectorClear());
            meta.RegisterMethod(3483755530, new CMethod_behaviac_Agent_VectorContains());
            meta.RegisterMethod(505785840, new CMethod_behaviac_Agent_VectorLength());
            meta.RegisterMethod(502968959, new CMethod_behaviac_Agent_VectorRemove());

            AgentMeta.Register <behaviac.Agent>("behaviac.Agent");
            AgentMeta.Register <CharacterAgent>("CharacterAgent");
            return(true);
        }
 public CharacterInventoryComponent(CharacterAgent agent) : base(agent)
 {
 }
Esempio n. 11
0
 public CharacterMovementComponent(CharacterAgent agent) : base(agent)
 {
 }
 public CharacterDashComponent(CharacterAgent agent) : base(agent)
 {
 }
Esempio n. 13
0
 public CharacterComponent(CharacterAgent agent)
 {
     this.agent = agent;
 }
Esempio n. 14
0
    // Update is called once per frame
    void Update()
    {
        if (Input.GetMouseButton(1))
        {
            if (CameraCaster.Instance.SelectedDestination() != null)
            {
                characterAgent.MoveToLocation((Vector3)CameraCaster.Instance.SelectedDestination());
            }
        }
        if (Input.GetMouseButtonDown(0))
        {
            characterAgent.Execute();
        }
        if (Input.GetKeyDown(KeyCode.B) && currentCommand == 'I')
        {
            currentCommand = 'B';
        }
        if (Input.GetKeyDown(KeyCode.A) && currentCommand == 'I')
        {
            currentCommand = 'A';
            characterAgent.BasicAttackInitiate();
        }

        /* Future action implementation
         * if (Input.GetKeyDown(KeyCode.Q) && currentCommand == 'I'){
         *  currentCommand = 'Q';
         *  characterAgent.ActionEnable(currentCommand);
         * }
         * if (Input.GetKeyDown(KeyCode.W) && currentCommand == 'I'){
         *  currentCommand = 'W';
         *  characterAgent.ActionEnable(currentCommand);
         * }
         * if (Input.GetKeyDown(KeyCode.E) && currentCommand == 'I'){
         *  currentCommand = 'E';
         *  characterAgent.ActionEnable(currentCommand);
         * }
         * if (Input.GetKeyDown(KeyCode.R) && currentCommand == 'I'){
         *  currentCommand = 'R';
         *  characterAgent.ActionEnable(currentCommand);
         * }
         */
        //// Cancel ////
        if (Input.GetKeyDown(KeyCode.Escape) && currentCommand == 'I')
        {
            Application.Quit();
        }
        else if (Input.GetKeyDown(KeyCode.Escape) && currentCommand != 'B')
        {
            characterAgent.CancelCommand();
            currentCommand = 'I';
        }

        //// Build Command ////
        if (currentCommand == 'B')
        {
            GameController.Instance.Build();
        }

        //// Camera Control ////
        if (Input.GetKeyDown(KeyCode.Space))
        {
            rtscamera.SetTarget(selectedCharacter.transform);
        }
        if (Input.GetKeyUp(KeyCode.Space) || (cameraJump))
        {
            rtscamera.ResetTarget();
            cameraJump = false;
        }

        //// Character Selection ////
        if (Input.GetKeyDown(KeyCode.Alpha1) || Input.GetKeyDown(KeyCode.Keypad1))
        {
            rtscamera.SetTarget(character01.transform);
            selectedCharacter = character01;
            characterAgent    = character01.GetComponent <CharacterAgent>();
            cameraJump        = true;
        }
        if (Input.GetKeyDown(KeyCode.Alpha2) || Input.GetKeyDown(KeyCode.Keypad2))
        {
            rtscamera.SetTarget(character02.transform);
            selectedCharacter = character02;
            characterAgent    = character02.GetComponent <CharacterAgent>();
            cameraJump        = true;
        }
        if (Input.GetKeyDown(KeyCode.Alpha3) || Input.GetKeyDown(KeyCode.Keypad3))
        {
            rtscamera.SetTarget(character03.transform);
            selectedCharacter = character03;
            characterAgent    = character03.GetComponent <CharacterAgent>();
            cameraJump        = true;
        }
        if (Input.GetKeyDown(KeyCode.Alpha4) || Input.GetKeyDown(KeyCode.Keypad4))
        {
            rtscamera.SetTarget(character04.transform);
            selectedCharacter = character04;
            characterAgent    = character04.GetComponent <CharacterAgent>();
            cameraJump        = true;
        }
    }
 public CharacterResourceComponent(CharacterAgent agent) : base(agent)
 {
 }
Esempio n. 16
0
 public CharacterDashState(CharacterAgent agent)
 {
     this.agent = agent;
 }
 public CharacterStaminaComponent(CharacterAgent agent) : base(agent)
 {
     stamina = agent.maxStamina;
 }