public override void ActionIn()
        {
            float      screenX = _playerController.playerInputState.X;
            float      screenY = _playerController.playerInputState.Y;
            RaycastHit hit;
            Ray        ray = CameraManager.Instance.CurCamera.followCamera.ScreenPointToRay(new Vector3(screenX, screenY, 0));

            bool IsHit = Physics.Raycast(ray.origin, ray.direction, out hit, rayDistance, maskLayer);

            if (IsHit && Vector3.Distance(_playerController.transform.position, hit.point)
                < distance)
            {
                GOMonsterController controller = hit.collider.GetComponent <GOMonsterController>();
                if (controller == null)
                {
                    return;
                }
                GameObject       obj  = controller.gameObject;
                MonsterBreedData data = DataManagerM.Instance.getMonsterDataManager().getBreedDate(obj);
                if (data.breedItem != _playerController.playerAttribute.handMaterialId)
                {
                    return;
                }
                controller.BeFeed();
            }
        }
Esempio n. 2
0
        protected override bool HitDetailCondition(UnityEngine.RaycastHit hit)
        {
            GameObject       obj  = hit.collider.gameObject;
            MonsterBreedData data = DataManagerM.Instance.getMonsterDataManager().getBreedDate(obj);

            if (data.breedItem == _playerController.playerAttribute.handMaterialId)
            {
                return(true);
            }
            return(false);
        }
Esempio n. 3
0
        public static void SaveBreedData(XmlDocument xdoc)
        {
            XmlNodeList nodeList = xdoc.GetElementsByTagName("MonsterBatch")[0].ChildNodes;

            foreach (XmlElement xe in nodeList)
            {
                MonsterBreedData data = new MonsterBreedData();
                data.decode(xe);
                BREEDDATA.Add(Convert.ToInt32(xe.GetAttribute("id")), data);
            }
        }