} // end ReloadWeapon private void ReloadWing(IEquipInfo info) { if (null == info) { if (null != wingGo) { UnityEngine.Object.Destroy(wingGo); } // end if return; } // end if string id = info.id; GameObject Go = ObjectTool.InstantiateGo(id, ResourcesTool.LoadPrefab(id)); if (null == Go) { DebugTool.LogError("ReloadWing ID: " + id + " prefab is don't exsit!"); return; } // end if if (null != wingGo) { UnityEngine.Object.Destroy(wingGo); } // end if wingGo = Go; wingGo.transform.SetParent(wingTrans); wingGo.transform.localPosition = Vector3.zero; wingGo.transform.localRotation = Quaternion.identity; } // end ReloadWing
} // end CreateInstance private MagicianCharacter(string name, Vector3 pos) : base(ConstConfig.MAGICIAN, ConstConfig.MAGICIAN, ObjectTool.InstantiateGo(name, ResourcesTool.LoadPrefab(ConstConfig.MAGICIAN), null, pos, Vector3.zero, Vector3.one)) { m_info = new MainCharacterInfo(name, ConstConfig.MAGICIAN, this); m_avatar = new MagicianAvatar(gameObject.AddComponent<Animation>()); SkinnedMeshRenderer meshRenderer = transform.GetComponentInChildren<SkinnedMeshRenderer>(); Transform[] allChildren = transform.GetComponentsInChildren<Transform>(); Transform wingTrans = null; Transform liftTrans = null; Transform furlTrans = null; foreach (Transform child in allChildren) { if (child.gameObject.name == "wing_spine") { wingTrans = child; break; } // end if } // end foreach foreach (Transform child in allChildren) { if (child.gameObject.name == "right_hand") { liftTrans = child; break; } // end if } // end foreach foreach (Transform child in allChildren) { if (child.gameObject.name == "weapon_spine") { furlTrans = child; break; } // end if } // end foreach m_mainSurface = new MainCharacterSurface(this, wingTrans, liftTrans, furlTrans, meshRenderer); m_surface = m_mainSurface; m_fsm = new MagicianFSM(this); skill.PushSkill("500101"); skill.PushSkill("500102"); skill.PushSkill("500103"); } // end MagicianCharacter
} // end Freshen private void ReloadWeapon(IEquipInfo info) { string id; if (null == info) { id = GameManager.playerInfo.roletype + "_weapon"; } else { id = info.id; } // end if GameObject Go = ObjectTool.InstantiateGo(id, ResourcesTool.LoadPrefab(id)); if (null == Go) { DebugTool.LogError("ReloadWeapon ID: " + id + " prefab is don't exsit!"); return; } // end if if (null != weaponGo) { UnityEngine.Object.Destroy(weaponGo); } // end if weaponGo = Go; FurlWeapon(); } // end ReloadWeapon
} // end ReloadWeapon private void ReloadWing(IEquipInfo info) { if (null == info) { if (null != wingGo) { Object.Destroy(wingGo); } return; } // end if string id = info.id; GameObject Go = ObjectTool.InstantiateGo(id, ResourcesTool.LoadPrefab(id)); if (null == Go) { DebugTool.LogError("ReloadWing ID: " + id + " prefab is don't exsit!"); return; } // end if if (null != wingGo) { Object.Destroy(wingGo); } // end if wingGo = Go; Go.transform.SetParent(wingTrans); Go.transform.localScale = Vector3.one; Go.transform.localPosition = Vector3.zero; Go.transform.localRotation = Quaternion.identity; Transform[] allChildren = Go.transform.GetComponentsInChildren <Transform>(); foreach (Transform child in allChildren) { child.gameObject.layer = LayerConfig.IgnoreRaycast; } // end foreach } // end ReloadWing
} // end NoviceVillage public void Initialize() { m_mainCanvas = new MainCanvas(); m_mainAudio = new MainAudio(); m_mainCamera = new MainCamera(); ObjectTool.InstantiateGo("npc_transmitter", ResourcesTool.LoadPrefab("npc_transmitter"), null, new UnityEngine.Vector3(0, 0, 10), new UnityEngine.Vector3(0, 270, 0), UnityEngine.Vector3.one).AddComponent<NPC_Transmitter2>(); m_characterManager.factory.CreateMainCharacter(new UnityEngine.Vector3(0, 0, 0)); m_characterManager.factory.CreateNPC("901001", new UnityEngine.Vector3(20, 0, 0)); m_characterManager.factory.CreateNPC("902001", new UnityEngine.Vector3(20, 0, 10)); m_characterManager.factory.CreateNPC("903001", new UnityEngine.Vector3(20, 0, 20)); m_characterManager.factory.CreateNPC("904001", new UnityEngine.Vector3(10, 0, 20)); m_characterManager.factory.CreateNPC("904002", new UnityEngine.Vector3(0, 0, 20)); m_characterManager.factory.CreateNPC("904003", new UnityEngine.Vector3(-10, 0, 20)); m_characterManager.factory.CreateNPC("904004", new UnityEngine.Vector3(-20, 0, 20)); m_characterManager.factory.CreateNPC("904005", new UnityEngine.Vector3(-20, 0, 10)); m_characterManager.factory.CreateNPC("904006", new UnityEngine.Vector3(-20, 0, 0)); m_characterManager.factory.CreateNPC("904007", new UnityEngine.Vector3(-20, 0, -10)); m_characterManager.factory.CreateNPC("904008", new UnityEngine.Vector3(-20, 0, -20)); m_characterManager.factory.CreateNPC("904009", new UnityEngine.Vector3(-10, 0, -20)); m_characterManager.factory.CreateNPC("904010", new UnityEngine.Vector3(0, 0, -20)); m_characterManager.factory.CreateNPC("905001", new UnityEngine.Vector3(10, 0, -20)); m_characterManager.factory.CreateNPC("905002", new UnityEngine.Vector3(20, 0, -20)); m_characterManager.factory.CreateNPC("905003", new UnityEngine.Vector3(20, 0, -10)); m_characterManager.factory.CreateNPC("906001", new UnityEngine.Vector3(30, 0, 0)); m_characterManager.factory.CreateNPC("906002", new UnityEngine.Vector3(0, 0, 30)); m_characterManager.factory.CreateNPC("906003", new UnityEngine.Vector3(-30, 0, 0)); m_mainAudio.PlayBackgroundMusic("fight_scene_bgm"); if (null == mainCharacter) { DebugTool.LogError("NoviceVillage CreateMainCharacter is null!!"); return; } // end if m_mainCamera.SetTarget(mainCharacter); mainCharacter.fsm.PerformTransition("wait"); uiPanelFSM.PerformTransition(new UIFightPanel()); } // end Initialize
} // end ReloadEquip private void ReloadWeapon(IEquipInfo info) { string id; if (null == info) { id = roleType + "_weapon"; } else { id = info.id; } // end if GameObject Go = ObjectTool.InstantiateGo(id, ResourcesTool.LoadPrefab(id)); if (null == Go) { DebugTool.LogError("ReloadWeapon ID: " + id + " prefab is don't exsit!"); return; } // end if if (null != weaponGo) { Object.Destroy(weaponGo); } // end if weaponGo = Go; Go.transform.SetParent(liftTrans); Go.transform.localScale = Vector3.one; Go.transform.localPosition = Vector3.zero; Go.transform.localRotation = Quaternion.identity; foreach (Transform child in Go.transform) { child.gameObject.layer = LayerConfig.IgnoreRaycast; } // end foreach } // end ReloadWeapon
} // end DoBeforeLeaving private void Flight() { if (isFlight) return; // end if AnimationState state = character.avatar.GetCurrentState("skill3"); if (null == state || state.normalizedTime < 0.5f) return; // end if isFlight = true; DamageData damage = new DamageData(character); Thunder thunder = Object.Instantiate(ResourcesTool.LoadPrefab("thunder")).AddComponent<Thunder>(); thunder.transform.position = character.position + Vector3.up * 0.8f + character.forward * 6f; thunder.transform.rotation = character.rotation; thunder.SetDamage(damage); } // end Flight
} // end ReloadArmor private void Init(string roleType) { displayGo = ObjectTool.InstantiateGo(roleType, ResourcesTool.LoadPrefab(roleType)); if (null == displayGo) { return; } rotSpeed = new Vector3(0, 1, 0); localPos = new Vector3(0, -7f, 30); localRot = new Vector3(0, 180, 0); localSca = Vector3.one * 15; string liftHand = ""; switch (roleType) { case ConstConfig.SWORDMAN: liftHand = "right_hand"; break; case ConstConfig.ARCHER: liftHand = "left_hand"; break; case ConstConfig.MAGICIAN: liftHand = "right_hand"; break; default: DebugTool.LogError("DisplayRole roleType: " + roleType + "is not config!!"); return; } // end switch Transform[] allChildren = displayGo.transform.GetComponentsInChildren <Transform>(); foreach (Transform child in allChildren) { if (child.gameObject.name == liftHand) { liftTrans = child; break; } // end if } // end foreach foreach (Transform child in allChildren) { if (child.gameObject.name == "wing_spine") { wingTrans = child; break; } // end if } // end foreach meshRenderer = displayGo.transform.GetComponentInChildren <SkinnedMeshRenderer>(); meshRenderer.gameObject.layer = LayerConfig.IgnoreRaycast; } // end Init
} // end MoveBackward private void FlightArrow() { AnimationState state = character.avatar.GetCurrentState("skill1_2"); if (null == state || state.normalizedTime < 0.3f) { return; } // end if isFlight = true; DamageData damage = new DamageData(character); PierceArrow arrow = Object.Instantiate(ResourcesTool.LoadPrefab("pierce_arrow")).AddComponent <PierceArrow>(); arrow.transform.position = character.position + Vector3.up * 0.8f; arrow.transform.rotation = character.rotation; arrow.SetDamage(damage); } // end FlightArrow
} // end NoviceVillage public void Initialize() { m_mainAudio = new MainAudio(); m_mainCanvas = new MainCanvas(); m_mainCamera = new MainCamera(); m_characterManager.factory.CreateMainCharacter(new Vector3(0, 0, -20)); m_mainAudio.PlayBackgroundMusic("novice_village_bgm"); if (null == mainCharacter) { DebugTool.LogError("NoviceVillage CreateMainCharacter is null!!"); return; } // end if ObjectTool.InstantiateGo("npc_grocery", ResourcesTool.LoadPrefab("npc_grocery"), null, new Vector3(24, 0, 3), new Vector3(0, 210, 0), Vector3.one).AddComponent<NPC_Grocery>(); ObjectTool.InstantiateGo("npc_forge", ResourcesTool.LoadPrefab("npc_forge"), null, new Vector3(-5, 0, 2), new Vector3(0, 160, 0), Vector3.one).AddComponent<NPC_Forge>(); ObjectTool.InstantiateGo("npc_transmitter", ResourcesTool.LoadPrefab("npc_transmitter"), null, new Vector3(17, 0, -24), new Vector3(0, 270, 0), Vector3.one).AddComponent<NPC_Transmitter>(); m_mainCamera.SetTarget(mainCharacter); mainCharacter.fsm.PerformTransition("idle"); uiPanelFSM.PerformTransition(new UITownPanel()); } // end Initialize
} // end DoBeforeLeaving private bool ShowArrow() { if (isFlight) { return(false); } // end if isFlight = true; character.avatar.Play("skill2_2"); if (null != arrow) { Object.Destroy(arrow.gameObject); } // end if arrow = Object.Instantiate(ResourcesTool.LoadPrefab("explosive_arrow")); arrow.transform.position = character.position + Vector3.up * 0.8f; arrow.transform.rotation = character.rotation; arrow.gameObject.SetActive(true); return(true); } // end ShowArrow
} // end CreateInstance private DemonBoss(string id, Vector3 position) : base(id, Object.Instantiate(ResourcesTool.LoadPrefab(id))) { gameObject.layer = LayerConfig.NPC; transform.position = position; transform.rotation = Quaternion.identity; m_info = new NPCharacterInfo(config.name, this); m_avatar = new DemonBossAvatar(id, gameObject.AddComponent<Animation>()); m_surface = new CharacterSurface(transform.GetComponentInChildren<SkinnedMeshRenderer>()); m_skill = new CharacterSkill(this); m_fsm = new DemonBossFSM(this); m_skill.PushSkill(DemonSkill_1.ID); } // end DemonBoss
} // end CreateInstance private Range_NeutralNPC(string id, Vector3 position) : base(id, Object.Instantiate(ResourcesTool.LoadPrefab(id))) { gameObject.layer = LayerConfig.NPC; transform.position = position; transform.rotation = Quaternion.identity; m_info = new NPCharacterInfo(config.name, this); m_avatar = new NormalNPCAvatar(id, gameObject.AddComponent<Animation>()); m_surface = new CharacterSurface(transform.GetComponentInChildren<SkinnedMeshRenderer>()); m_fsm = new Range_NeutralNPCFSM(this); } // end Range_NeutralNPC