void StartAtk() { state = AtkState.atkbegin; if (Vector3.Distance(parent.transform.position, target.transform.position) > parent.GetAtkDis(target)) { state = AtkState.non; return; } if (GameConst.CAMP_ATK[(int)target.camp, (int)parent.camp] == 0) { if (target.GetObjType() == InGameBaseObj.enObjType.equip) { InGameBaseEquip equip = (InGameBaseEquip)target; parent.StopAction(); EquipData e = EquipSystem.GetInstance().RandEquipProperty(equip); InGameManager.GetInstance().inGamePlayerManager.AddEquip(e); MonoBehaviour.Destroy(equip.gameObject); } return; } parent.SetAnimatorState(parent.GetAtkAnimator(), parent.GetAtkSpeed()); atkTime = 0; Vector3 v = (target.transform.position - parent.transform.position).normalized; parent.transform.forward = v; }
void StartAtk() { state = ActionState.atkbegin; if (target == null || target.IsDie()) { state = ActionState.non; return; } if (Vector2.Distance(parent.transform.position, target.transform.position) > parent.GetAtkDis(target)) { state = ActionState.move; return; } if (GameConst.CAMP_ATK[(int)target.camp, (int)parent.camp] == 0) { if (target.GetObjType() == InGameBaseObj.enObjType.equip) { InGameBaseEquip equip = (InGameBaseEquip)target; EquipData e = EquipSystem.GetInstance().RandEquipProperty(equip); InGameManager.GetInstance().inGamePlayerManager.AddEquip(e); MonoBehaviour.Destroy(equip.gameObject); parent.StopAction(); return; } else if (target.GetObjType() == InGameBaseObj.enObjType.map) { InGameBaseMapObj mapobj = (InGameBaseMapObj)target; bool isfin = mapobj.HandleFuntion(parent); if (!isfin) { Debug.Log("stop action"); parent.StopAction(); return; } Debug.Log("continue action"); } } parent.SetAnimatorState(parent.GetAtkAnimator(), parent.GetAtkSpeed()); atkTime = 0; parent.SetDir(target.transform.position.x - parent.transform.position.x); }
public EquipData RandEquipProperty(InGameBaseEquip equip) { EquipConf equipConf = ConfigManager.equipConfManager.dic[equip.confid]; EquipConfData propertyData = ConfigManager.equipConfManager.datadic[equip.confid]; List <PropertyConf> propertys = ConfigManager.propertyConfManager.datas; List <EquipProperty> propertyList = new List <EquipProperty>(); EquipQuality quality = equip.quality; for (int i = 0; i < propertyData.propertyList.Count; i++) { PropertyConf propertyConf = ConfigManager.propertyConfManager.dataMap[propertyData.propertyList[i].id]; EquipProperty e = new EquipProperty(); e.id = propertyConf.id; float val = propertyConf.baseval + propertyConf.GetLevelupVal(equip.level); e.val = Mathf.Ceil(val + Random.Range(-val * propertyConf.randomrange, val * propertyConf.randomrange)); e.val = e.val * (propertyData.propertyList[i].rate / 100f); propertyList.Add(e); } for (int i = propertyData.propertyList.Count; i < quality.propertycount; i++) { PropertyConf propertyConf = propertys[Random.Range(0, propertys.Count)]; EquipProperty e = new EquipProperty(); e.id = propertyConf.id; float val = propertyConf.baseval + propertyConf.GetLevelupVal(equip.level); e.val = Mathf.Ceil(val + Random.Range(-val * propertyConf.randomrange, val * propertyConf.randomrange)); propertyList.Add(e); } EquipData equipData = new EquipData( UserDataManager.instance.GetInstanceID(), ConfigManager.equipQualityManager.GetByPropertyCount(propertyList.Count).id, equipConf.id, -1, propertyList); return(equipData); //UserDataManager.instance.AddEquip(equipData); }
public InGameBaseEquip OutEquip(GameObject go, int level, float fm) { EquipConf equipConf = ConfigManager.equipConfManager.GetRandomEquip(); GameObject equipobj = (GameObject)Resources.Load(equipConf.prefabpath + equipConf.prefabname); equipobj = MonoBehaviour.Instantiate(equipobj); equipobj.transform.position = GameCommon.GetWorldPos(GameCommon.GetMapPos(go.transform.position)); GameCommon.SetObjZIndex(equipobj, 3.1f); InGameBaseEquip equip = equipobj.GetComponent <InGameBaseEquip>(); equip.Init(-1, equipConf.id, enMSCamp.en_camp_item); equip.level = level; equip.quality = ConfigManager.equipQualityManager.GetEquipQuality(fm); EquipOutAction equipOutAction = equipobj.AddComponent <EquipOutAction>(); equipOutAction.Init(equipobj.transform.position); return(equip); }
// Use this for initialization void Start() { GameObject startBtn = GameObject.Find("UI Root").transform.Find("StartGame").gameObject; GameUIEventListener.Get(startBtn).onClick = StartCB; GameObject chooseRoleBtn = GameObject.Find("UI Root").transform.Find("ChooseRoleBtn").gameObject; GameUIEventListener.Get(chooseRoleBtn).onClick = ChooseRoleCB; GameObject clearDataBtn = GameObject.Find("UI Root").transform.Find("ClearDataBtn").gameObject; GameUIEventListener.Get(clearDataBtn).onClick = ClearDataCB; GameObject equipobj = (GameObject)Resources.Load("Prefabs/items/item_icon"); equipobj = MonoBehaviour.Instantiate(equipobj); InGameBaseEquip equip = equipobj.GetComponent <InGameBaseEquip>(); equip.Init(-1, 200001, enMSCamp.en_camp_item); equip.level = 1; }