public async void loadBuffData() { string jsonString = (await AssetManager.LoadAssetAsync <TextAsset>("BuffMap")).text; buffDataDict = Tools.Json2Obj <Dictionary <string, BuffData> >(jsonString); buffDataList = buffDataDict.Values.ToList(); }
public async void InitAnimEffect() { animEffectDataDic.Clear(); var animEffectSaveDataAsset = await AssetManager.LoadAssetAsync <AnimEffectSaveDataAsset>(animEffectSaveDataPath); if (animEffectSaveDataAsset != null) { if (animEffectSaveDataAsset != null && animEffectSaveDataAsset.animEffectDataList != null) { foreach (var item in animEffectSaveDataAsset.animEffectDataList) { if (animEffectDataDic.ContainsKey(item.id)) { animEffectDataDic.Remove(item.id); } animEffectDataDic.Add(item.id.ToLower(), item); } } } else { // var animEffectSaveData = await AssetManager.LoadJson<AnimEffectSaveData>(animEffectSaveDataFileName); var animEffectSaveData = Tools.Load <AnimEffectSaveData>(animEffectSaveDataFileName); if (animEffectSaveData != null && animEffectSaveData.animEffectDataList != null) { foreach (var item in animEffectSaveData.animEffectDataList) { animEffectDataDic.Add(item.id.ToLower(), item); } } } }
public async void loadTagTriggerList() { tagTriggerListData = await AssetManager.LoadAssetAsync <TagTriggerListData>(TagTirggerListDataPath); if (tagTriggerListData != null && tagTriggerListData.TagList != null && tagTriggerListData.tagTriggerBoolList != null) { int co = tagTriggerListData.TagList.Count; TagTirggerList = new bool[co, co]; for (int t = 0; t < tagTriggerListData.tagTriggerBoolList.Count; t++) { for (int xt = 0; xt < tagTriggerListData.tagTriggerBoolList[t].list.Count; xt++) { TagTirggerList[t, xt] = tagTriggerListData.tagTriggerBoolList[t].list[xt]; } } taglist = tagTriggerListData.TagList; } else { string jsonString = Tools.ReadStringFromFile(Application.dataPath + "/" + TagTirggerListPath); TagTirggerList = Tools.Json2Obj <bool[, ]>(jsonString); string jsonlist = Tools.ReadStringFromFile(Application.dataPath + "/" + path + "TagList.json"); taglist = Tools.Json2Obj <List <string> >(jsonlist); } }
private async void SetPlayer1SoulIcon(object[] objects) { string value = (string)objects[0]; if (!string.IsNullOrEmpty(value)) { var tex = AssetManager.LoadAssetAsync <Texture>("Assets/Resources_moved/Textures/Icon/" + value + ".png"); Texture texture = await tex; image_soul.texture = new NTexture(texture); } }
private static async void LoadJson() { var AudioIDTask = AssetManager.LoadAssetAsync <TextAsset>("AttackAudio"); var AudioIDTextAsset = await AudioIDTask; AudioIDDic = Tools.Json2Obj <Dictionary <string, string> >(AudioIDTextAsset.text); var AudioNameTask = AssetManager.LoadAssetAsync <TextAsset>("AudioName"); var AudioNameTextAsset = await AudioNameTask; AudioNameDic = Tools.Json2Obj <Dictionary <string, AudioAttackName> >(AudioNameTextAsset.text); }
// public Task <GameObject> GetPrefab(string name) { name = name.ToLower(); // 转为小写 add by TangJian 2018/11/29 23:19 string prefabPath; if (prefabPathDic.TryGetValue(name, out prefabPath)) { return(AssetManager.LoadAssetAsync <GameObject>(prefabPath)); } Debug.LogError("找不到预制体: " + name); return(null); }
public async void PlayEffect(string key, Vector3 worldPos) { GameObject musicPlayer = await AssetManager.SpawnAsync("Music/MusicPlayer.prefab"); musicPlayer.transform.position = worldPos; AudioSource audioSource = musicPlayer.GetComponent <AudioSource>(); var clip = await AssetManager.LoadAssetAsync <AudioClip>("Music/" + key + ".WAV"); audioSource.PlayOneShot(clip); musicPlayer.DoDelay(clip.length).OnComplete(() => { AssetManager.DeSpawn(musicPlayer); }); }
public async void NewAnimation(GameObject Rander, SkillData skillData) { GameObject Animation = Rander.GetChild("Animation", true); Spine.Unity.SkeletonAnimation skeletonAnimation = Animation.AddComponent <Spine.Unity.SkeletonAnimation>(); skeletonAnimation.skeletonDataAsset = await AssetManager.LoadAssetAsync <Spine.Unity.SkeletonDataAsset>(skillData.SkeletonDataAssetPath); var skeletonAnimationRenderer = skeletonAnimation.GetComponent <Renderer>(); skeletonAnimationRenderer.enabled = false; DelayFunc(() => { skeletonAnimationRenderer.enabled = true; }, 0.00001f); skeletonAnimation.initialSkinName = skillData.SkinName; skeletonAnimation.Initialize(true); Spine.TrackEntry TrackEntry = skeletonAnimation.state.SetAnimation(0, skillData.AnimationName, true); Animation.AddComponent <SortRenderer>(); }
async void load() { SkillManagerDataAsset = await AssetManager.LoadAssetAsync <SkillManagerDataAsset>(skillDataAssetFile); string textString = (await AssetManager.LoadAssetAsync <TextAsset>("SkillDatas")).text; skillListSaveDataDic = Tools.Json2Obj <Dictionary <string, SkillListSaveData> >(textString); if (SkillManagerDataAsset != null && SkillManagerDataAsset.skillListSaveDatas.Count != 0) { skillDataMap = SkillManagerDataAsset.skillListSaveDatas.ToDictionary(item => item.id.ToLower(), item => item); } else { string jsonString = Tools.ReadStringFromFile(Application.dataPath + "/" + "Resources_moved/Scripts/Skill/Skill.json"); skillDataMap = Tools.Json2Obj <Dictionary <string, SkillData> >(jsonString).ToDictionary(pair => pair.Key.ToLower(), pair => pair.Value); } var a = 1; //skillListSaveDataDic = Tools.getObjectFromResource<Dictionary<string, SkillListSaveData>>("Scripts/Skill/SkillList"); }
public async void playEffectAnim(string animName, Vector3 position, float rotation = 0.0f) { GameObject ins = await AssetManager.LoadAssetAsync <GameObject>( "Aeests/Resources_moved/Prefabs/Effect/RoleEffectAnim.prefab"); var roleEffectAnim = Instantiate(ins); var roleEffectSkeletonAnimation = roleEffectAnim.GetComponent <SkeletonAnimation>(); roleEffectSkeletonAnimation.skeleton.SetToSetupPose(); roleEffectSkeletonAnimation.state.SetAnimation(0, animName, false); Destroy(roleEffectAnim, 0.5f); // 旋转 add by TangJian 2017/08/25 17:50:30 roleEffectAnim.transform.eulerAngles = new Vector3(0, 0, rotation); roleEffectSkeletonAnimation.transform.parent = transform.parent; roleEffectSkeletonAnimation.transform.position = position; }
public async Task <GameObject> PlayAnim(string animId, string animPath, string animName, bool loop, Vector3 position, float scale = 1f) { GameObject InstantiateSpecialEffect = new GameObject(); InstantiateSpecialEffect.SetActive(false); InstantiateSpecialEffect.transform.position = position; InstantiateSpecialEffect.AddComponentUnique <SortRenderer>(); SkeletonAnimation skeletonAnimation = InstantiateSpecialEffect.AddComponentUnique <SkeletonAnimation>(); skeletonAnimation.skeletonDataAsset = await AssetManager.LoadAssetAsync <SkeletonDataAsset>(animPath); skeletonAnimation.Initialize(false); skeletonAnimation.state.SetAnimation(0, animName, loop); InstantiateSpecialEffect.transform.localScale = new Vector3(scale, scale, scale); InstantiateSpecialEffect.SetActive(true); return(InstantiateSpecialEffect); }
public async Task NewAnim(GameObject anim, SkillData skillData) { Animator animator = anim.GetComponent <Animator>(); Spine.Unity.SkeletonAnimator skeletonAnimator = anim.GetComponent <Spine.Unity.SkeletonAnimator>(); var skeletonAnimatorRenderer = skeletonAnimator.GetComponent <Renderer>(); skeletonAnimatorRenderer.enabled = false; DelayFunc(() => { skeletonAnimatorRenderer.enabled = true; }, 0.00001f); animator.runtimeAnimatorController = await AssetManager.LoadAssetAsync <RuntimeAnimatorController>(skillData.AnimControllerPath); skeletonAnimator.skeletonDataAsset = await AssetManager.LoadAssetAsync <Spine.Unity.SkeletonDataAsset>(skillData.SkeletonDataAssetPath); skeletonAnimator.initialSkinName = skillData.SkinName; skeletonAnimator.Initialize(true); }
public async void loadPlacementData() { roleDataDict = Tools.Json2Obj <Dictionary <string, tian.PlacementData> >((await AssetManager.LoadAssetAsync <TextAsset>("PlacementDatas")).text); }
private static async void GetAsset() { s_DropItemsDataAsset = await AssetManager.LoadAssetAsync <DropItemsDataAsset>("Manager/DropItemsDataAsset.asset"); }
public async override void Start() { base.Start(); if (ItemData.renderType == RenderType.Image) { gameObject.layer = LayerMask.NameToLayer("CollideWithGround"); bool sdsa = true; var itemData = ItemManager.Instance.getItemDataById <ItemData>(ItemId); mainRigidbody.collisionDetectionMode = CollisionDetectionMode.ContinuousDynamic; if (ItemData.itemType == ItemType.Equip) { sdsa = false; var itemDatad = ItemManager.Instance.getItemDataById <EquipData>(ItemId); if (itemDatad.imgGround == ImgGround.ground) { Texture2D texture = await AssetManager.LoadAssetAsync <Texture2D>(Definition.TextureAssetPrefix + "Icon/" + itemDatad.groundImgId + ".png"); Texture2D texture2d = texture; float width = texture2d.width / 100f; float height = texture2d.height / 100f; MeshFilter meshFilter = gameObject.GetChild("Renderer").GetComponentInChildren <MeshFilter>(); MeshRenderer meshRenderer = gameObject.GetChild("Renderer").GetComponentInChildren <MeshRenderer>(); Material blackMaterial; // 初始化mesh uv 等add by TangJian 2017/12/20 17:04:45 { // Shader shader = Shader.Find("Custom/Unlit/Transparent"); // Shader shader = Shader.Find("Spine/W_Sprite"); Shader shader = Shader.Find("Custom/Unlit/Transparent"); { Mesh mesh = new Mesh(); // 为网格创建顶点数组 Vector3[] vertices = new Vector3[4] { new Vector3(width / 2, 0.1f, (height * (float)System.Math.Sqrt(3)) / 2), new Vector3(-width / 2, 0.1f, (height * (float)System.Math.Sqrt(3)) / 2), new Vector3(width / 2, 0.1f, (-height * (float)System.Math.Sqrt(3)) / 2), new Vector3(-width / 2, 0.1f, (-height * (float)System.Math.Sqrt(3)) / 2) }; // for (int i = 0; i < vertices.Length; i++) // { // vertices[i].y += height / 2; // } mesh.vertices = vertices; // 通过顶点为网格创建三角形 int[] triangles = new int[2 * 3] { 0, 3, 1, 0, 2, 3 }; mesh.triangles = triangles; mesh.uv = new Vector2[] { new Vector2(1, 1), new Vector2(0, 1), new Vector2(1, 0), new Vector2(0, 0) }; meshFilter.mesh = mesh; } Material material = new Material(shader); material.mainTexture = texture; material.renderQueue = 3000; material.SetFloat("_ZTest", (float)UnityEngine.Rendering.CompareFunction.LessEqual); material.SetFloat("_ZWrite", 1); meshRenderer.sortingOrder = 0; meshRenderer.material = material; // meshRenderer.material.color=Color.black; blackMaterial = material; } // 根据渲染设置碰撞区域 add by TangJian 2017/11/18 17:32:18 { BoxCollider boxCollider = gameObject.GetComponent <BoxCollider>(); Bounds bounds = new Bounds(gameObject.transform.position, Vector3.zero); bounds.Encapsulate(meshRenderer.bounds); bounds.center = gameObject.transform.InverseTransformPoint(bounds.center); boxCollider.center = new Vector3(0, 0.5f, 0);; boxCollider.size = new Vector3(bounds.size.x, 1f, bounds.size.z); boxCollider.enabled = true; BoxCollider InteractBoxCollider = gameObject.GetChild("Interact").GetComponent <BoxCollider>(); InteractBoxCollider.center = boxCollider.center; InteractBoxCollider.size = boxCollider.size + new Vector3(1, 1, 1); } float scale = 1.25f; gameObject.transform.localScale = new Vector3(1, 1, 1) * scale; // 影子设置 add by TangJian 2017/12/20 15:44:55 // { // BoxCollider boxCollider = gameObject.GetComponent<BoxCollider>(); GameObject shadow = gameObject.GetChild("Shadow"); shadow.SetActive(false); // ShadowProjector shadowProjector=shadow.GetComponent<ShadowProjector>(); // shadowProjector._Material=blackMaterial; // shadowProjector.UVRect=new Rect(0f,0.5f,0.5f,0.5f); // Bounds blackbound = new Bounds(gameObject.transform.position, Vector3.zero); // blackbound.Encapsulate(meshRenderer.bounds); // blackbound.center = gameObject.transform.InverseTransformPoint(blackbound.center); // shadowProjector.UVRect=new Rect(0f,0.5f,0.5f,0.5f); // shadowProjector.AutoSizeOpacity=true; // shadowProjector.AutoSOMaxScaleMultiplier=0.5f; // shadowProjector.ShadowSize = blackbound.size.x; // ShadowProjector shadowProjector = shadow.GetComponent<ShadowProjector>(); // shadow.transform.localPosition = new Vector3(0, 0, 0); // Projector Projector=shadow.GetComponent<Projector>(); // blackMaterial.color=Color.black; // Projector.material=blackMaterial; // shadowController.shadowSize = boxCollider.size.x * gameObject.transform.localScale.x; // shadowController.shadowSize *= 0.6f; // } } else { sdsa = true; } } if (itemData.icon.IsValid() && sdsa) { Texture2D texture = await AssetManager.LoadAssetAsync <Texture2D>(Definition.TextureAssetPrefix + "Icon/" + itemData.icon + ".png"); float width = texture.width / 100f; float height = texture.height / 100f; MeshFilter meshFilter = gameObject.GetChild("Renderer", true).GetComponentInChildren <MeshFilter>(); MeshRenderer meshRenderer = gameObject.GetChild("Renderer", true).GetComponentInChildren <MeshRenderer>(); gameObject.GetChild("Renderer").AddComponent <SortRenderer>(); // 初始化mesh uv 等add by TangJian 2017/12/20 17:04:45 { // Shader shader = Shader.Find("Custom/Unlit/Transparent"); // Shader shader = Shader.Find("Spine/W_Sprite"); Shader shader = Shader.Find("Custom/Unlit/Transparent"); { Mesh mesh = new Mesh(); // 为网格创建顶点数组 Vector3[] vertices = new Vector3[4] { new Vector3(width / 2, height / 2, 0), new Vector3(-width / 2, height / 2, 0), new Vector3(width / 2, -height / 2, 0), new Vector3(-width / 2, -height / 2, 0) }; for (int i = 0; i < vertices.Length; i++) { vertices[i].y += height / 2; } mesh.vertices = vertices; // 通过顶点为网格创建三角形 int[] triangles = new int[2 * 3] { 0, 3, 1, 0, 2, 3 }; mesh.triangles = triangles; mesh.uv = new Vector2[] { new Vector2(1, 1), new Vector2(0, 1), new Vector2(1, 0), new Vector2(0, 0) }; meshFilter.mesh = mesh; } Material material = new Material(shader); material.mainTexture = texture; material.renderQueue = 3000; material.SetFloat("_Cutoff", 0.2f); material.SetFloat("_ZTest", (float)UnityEngine.Rendering.CompareFunction.LessEqual); material.SetFloat("_ZWrite", 1); //material.SetFloat("_ZTest", 1); meshRenderer.material = material; } // 根据渲染设置碰撞区域 add by TangJian 2017/11/18 17:32:18 { BoxCollider boxCollider = gameObject.GetComponent <BoxCollider>(); Bounds bounds = new Bounds(gameObject.transform.position, Vector3.zero); bounds.Encapsulate(meshRenderer.bounds); bounds.center = gameObject.transform.InverseTransformPoint(bounds.center); boxCollider.center = bounds.center; boxCollider.size = bounds.size; BoxCollider InteractBoxCollider = gameObject.GetChild("Interact").GetComponent <BoxCollider>(); InteractBoxCollider.center = boxCollider.center; InteractBoxCollider.size = boxCollider.size + new Vector3(1, 1, 1); } float scale = 1.25f; gameObject.transform.localScale = new Vector3(1, 1, 1) * scale; // 影子设置 add by TangJian 2017/12/20 15:44:55 { // BoxCollider boxCollider = gameObject.GetComponent<BoxCollider>(); GameObject shadow = gameObject.GetChild("Shadow"); ShadowProjector shadowProjector = shadow.GetComponent <ShadowProjector>(); // shadowProjector.UVRect=new Rect(0f,0.5f,0.5f,0.5f); // shadowProjector.UVRect=new Rect(0f,0.5f,0.5f,0.5f); // Material material=(Material)UnityEditor.AssetDatabase.LoadAssetAtPath("Assets/Standard Assets/Effects/Projectors/Materials/ShadowProjector.mat",typeof(Material)); // shadowProjector._Material=material; // shadowProjector.AutoSizeOpacity=true; // shadowProjector.AutoSOMaxScaleMultiplier=0.5f; shadowProjector.ShadowSize = width * 0.6f; // shadowProjector.AutoSizeOpacity=true; // shadowProjector.AutoSOMaxScaleMultiplier=0.5f; // ShadowController shadowController = shadow.GetComponent<ShadowController>(); // shadow.transform.localPosition = new Vector3(0, 0, 0); // shadowController.shadowSize = boxCollider.size.x * gameObject.transform.localScale.x; // shadowController.shadowSize *= 0.6f; } } if (animSequence == null && sdsa) { animSequence = DOTween.Sequence(); // 播放动画 add by TangJian 2017/12/25 15:43:55 animSequence.Append(gameObject.GetChild("Renderer").transform.DOLocalMoveY(0.2f, 2f)); animSequence.Append(gameObject.GetChild("Renderer").transform.DOLocalMoveY(0f, 2f)).OnComplete(() => { animSequence.Restart(); }); } } else if (ItemData.renderType == RenderType.Anim) { GameObject animObject = gameObject.GetChild("Renderer").GetChild("anim", true); _skeletonAnimation = animObject.AddComponentIfNone <SkeletonAnimation>(); _skeletonAnimation.skeletonDataAsset = await AssetManager.LoadAssetAsync <SkeletonDataAsset>(ItemData.anim); _skeletonAnimation.Initialize(true); _skeletonAnimation.state.SetAnimation(0, itemData.idleAnim, true); // _functionPool.AddFunc(() => // { // if (_skeletonAnimation != null && _skeletonAnimation.state != null) // { // _skeletonAnimation.state.SetAnimation(0, itemData.idleAnim, true); // return true; // } // // return false; // }); } InitPickUpMethod(); }
private async void GetDropItem() { dropItem = await AssetManager.LoadAssetAsync <GameObject>("Assets/Resources_moved/Prefabs/DropItem/DropItem.prefab"); }
public async Task<SceneController> CreateScene(SceneData sceneData, int difficultyLevel = 1) { // 新建场景 GameObject prefab = await AssetManager.LoadAssetAsync<GameObject>("Assets/Resources_moved/Prefabs/Scenes/" + sceneData.rawSceneId+".prefab"); Debug.Assert(prefab != null, "找不到场景预制体:" + "Prefabs / Scenes / " + sceneData.rawSceneId); GameObject scene = Instantiate(prefab); // Debug.Log(" 预制体id " + sceneData.rawSceneId); scene.transform.parent = SceneRoot.transform; scene.transform.localPosition = GetOnlyScenePosition(); scene.name = sceneData.sceneId; SceneController sceneController = scene.GetComponent<SceneController>(); sceneController.SceneData = sceneData; { // 添加怪物 add by TangJian 2017/08/03 21:35:51 { foreach (var roleData in sceneData.roleDatas) { roleData.locationData.position = sceneController.GetAreaRandomPosition(roleData.locationData.areaId); roleData.difficultyLevel = difficultyLevel; sceneController.AddRole(roleData); } } // 添加物品 add by TangJian 2017/08/22 19:45:51 { foreach (var itemData in sceneData.itemDatas) { var item = GameObjectManager.Instance.Create(itemData.id); DropItemController dropItemController = item.GetComponent<DropItemController>(); itemData.position = sceneController.GetAreaRandomPosition("MonsterAreas"); sceneController.DropItemEnterWithLocalPosition(dropItemController, itemData.position); } } // 添加放置物体 add by TangJian 2018/01/23 15:52:08 { foreach (var placementData in sceneData.PlacementDatas) { var placementObject = GameObjectManager.Instance.Create(placementData.id); SceneObjectController sceneObjectController = placementObject.GetComponent<SceneObjectController>(); PlacementController treasureBoxController = placementObject.GetComponent<PlacementController>(); treasureBoxController.Placementdata = placementData; placementData.position = sceneController.GetAreaRandomPosition("MonsterAreas"); sceneController.PlacementEnterWithLocalPosition(sceneObjectController, placementData.position); ScenePlacementComponent sceneComponent = treasureBoxController.gameObject.GetComponent<ScenePlacementComponent>(); if (sceneComponent != null) { sceneComponent.GridPos = placementObject.transform.localPosition; } } } // 设置门数据 add by TangJian 2018/12/26 16:00 for (int i = 0; i < sceneData.portalDatas.Count; i++) { PortalData portalData = sceneData.portalDatas[i]; Transform portalTransform = scene.transform.Find("Portals/" + portalData.id); Debug.Assert(portalTransform != null, "找不到门: " + sceneData.sceneId + ":" + portalData.id); PortalController portalController = portalTransform.GetComponent<PortalController>(); portalController.PortalData = portalData; portalController.State = 1; } // 为丢失NavMeshDataBuild { foreach(var item in scene.GetComponents<UnityEngine.AI.NavMeshSurface>()) { if (item.navMeshData == null) { item.BuildNavMesh(); } } } } // 初始化 // sceneController.InitData(); return sceneController; }
private async void UnLoad() { var obj = await AssetManager.LoadAssetAsync <TextAsset>("WeaponDatas"); Addressables.Release(obj); }
private static async void GetAsset() { s_RoleQTEDataAsset = await AssetManager.LoadAssetAsync <RoleQTEDataAsset>("Manager/RoleQTEDataAsset.asset"); }
public static async void ExecuteRoleAction(RoleController roleController, ActionData actionData) { if (actionData.chance >= Random.Range(0, 101)) { switch (actionData.type) { case ActionType.AddAttr: { roleController.AddAttr((AttrType)actionData.int1, actionData.float1); // roleController.AddAttr(actionData.string1, actionData.float1); } break; case ActionType.AddAnim: { var animGameObject = AnimManager.Instance.PlayAnim(actionData.type + actionData.string1, actionData.string1, actionData.bool1, roleController.CharacterController.bounds.center + new Vector3(0, 0, -0.5f), 1, 1, actionData.float1, roleController.transform); } break; case ActionType.RemoveAnim: { AnimManager.Instance.removeAnim(actionData.type + actionData.string1); } break; case ActionType.SetColor: // 变红 roleController.SkeletonAnimator.skeleton.DoColorTo(new Color(actionData.float1, actionData.float2, actionData.float3), 0.2f).OnComplete(() => { roleController.SkeletonAnimator.skeleton.DoColorTo(Color.white, 0.2f); }); break; case ActionType.CreateDamage: var triggerObject = GameObject.Instantiate(await AssetManager.LoadAssetAsync <GameObject>("Assets/Resources_moved/Prefabs/Trigger/TriggerCube.prefab")); triggerObject.tag = "Damage"; triggerObject.layer = LayerMask.NameToLayer("Interaction"); float destroyDelayTime = 0.1f; Tools.RemoveComponent <TriggerController>(triggerObject); var damageController = triggerObject.AddComponent <DamageController>(); // 不渲染 add by TangJian 2017/07/07 22:40:39 { var meshRenderer = triggerObject.GetComponent <MeshRenderer>(); if (DebugManager.Instance.debugData.debug) { meshRenderer.enabled = true; destroyDelayTime = 1; } else { meshRenderer.enabled = false; } } // 设置大小 add by TangJian 2017/07/07 22:40:40 { var boxCollider = triggerObject.GetComponent <BoxCollider>(); triggerObject.transform.localScale = new Vector3(actionData.vector3_2.x, actionData.vector3_2.y, actionData.vector3_2.z); } // 设置位置 add by TangJian 2017/07/07 22:34:48 { triggerObject.transform.parent = roleController.gameObject.transform.parent; // var a = direction; var x = roleController.gameObject.transform.localPosition.x + actionData.vector3_1.x * roleController.GetDirectionInt(); var y = roleController.gameObject.transform.localPosition.y + actionData.vector3_1.y; var z = roleController.gameObject.transform.localPosition.z + actionData.vector3_1.z; triggerObject.transform.localPosition = new Vector3(x, y, z); } var damageData = new DamageData(); damageController.damageData = damageData; // 设置持有者 add by TangJian 2017/07/27 20:26:44 damageData.teamId = roleController.RoleData.TeamId; damageData.owner = roleController.gameObject; damageData.itriggerDelegate = roleController; // 力度 add by TangJian 2017/07/24 15:16:23 { damageData.force = new Vector3(roleController.GetDirectionInt() * actionData.vector3_3.x, actionData.vector3_3.y, actionData.vector3_3.z); } // 攻击方向 add by TangJian 2017/07/24 15:17:37 { damageData.direction = new Vector3(roleController.GetDirectionInt() * (int)actionData.int2, 0, 0); } // 攻击类别 add by TangJian 2017/07/24 15:17:35 { damageData.hitType = (int)actionData.int1; } // 攻击击退 add by TangJian 2017/08/29 22:18:55 // { // damageData.targetMoveBy = new Vector3(roleController.getDirectionInt() * roleAtkFrameEventData.targetMoveBy.x, roleAtkFrameEventData.targetMoveBy.y, roleAtkFrameEventData.targetMoveBy.z); // } // 伤害效果类型 add by TangJian 2017/08/16 15:33:01 // { // var mainHandWeapon = RoleData.EquipData.getMainHand<WeaponData>(); // if (mainHandWeapon != null) // { // damageData.damageEffectType = mainHandWeapon.damageEffectType; // } // } // 攻击力 add by TangJian 2017/07/24 15:17:22 // damageData.atk = roleData.Atk * roleAtkFrameEventData.atk; // 暴击 add by TangJian 2017/12/20 21:50:30 // if (roleData.FinalCriticalRate >= UnityEngine.Random.Range(0.0f, 1.0f)) // { // //damageData.isCritical = true; // //damageData.atk *= roleData.CriticalDamage; // } triggerObject.DestoryChildren(); Tools.Destroy(triggerObject, destroyDelayTime); break; } } }
// [RuntimeInitializeOnLoadMethod] public static async void GetAsset() { s_RoleUpgradeDataAsset = await AssetManager.LoadAssetAsync <RoleUpgradeDataAsset>("Manager/RoleUpgradeDataAsset.asset"); }