From f450a08ab4f1a0c1a78a54c3520f78dba11d782e Mon Sep 17 00:00:00 2001 From: Ino Date: Wed, 25 Dec 2024 10:44:44 +0900 Subject: [PATCH] =?UTF-8?q?=EC=A0=84=EC=A7=81=20=EC=97=90=EB=9F=AC=20?= =?UTF-8?q?=EC=88=98=EC=A0=95,=20=ED=9C=98=EB=AA=B0=EC=95=84=EC=B9=98?= =?UTF-8?q?=EB=8A=94=20=ED=8C=8C=EB=8F=84=EB=8A=94=20=EC=BA=90=EB=A6=AD?= =?UTF-8?q?=ED=84=B0=EA=B0=80=20=EB=B0=94=EB=9D=BC=EB=B3=B4=EB=8A=94=20?= =?UTF-8?q?=EB=B0=A9=ED=96=A5=EC=9C=BC=EB=A1=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Ino_nerdnavis.txt | 7 ------- Assets/Res_Addr/Skill/Skill_StraightBurst.prefab | 11 ++++++----- Assets/Script/Character/Actor.cs | 13 +++++++------ Assets/Script/Character/Mob/BossMobActor.cs | 2 +- Assets/Script/Character/Mob/MobActor.cs | 2 +- Assets/Script/Character/MyActor.cs | 2 +- Assets/Script/Character/PC/WizardActor.cs | 2 +- Assets/Script/Character/PetActor.cs | 6 +++--- .../Script/Character/Projectile/ProjectileBase.cs | 14 ++++++++++---- .../Character/Projectile/Skill/Skill_IceBolt.cs | 2 +- .../Projectile/Skill/Skill_ShieldAttack.cs | 2 +- .../Projectile/Skill/Skill_StraightBurst.cs | 9 +++++++-- .../Character/Projectile/Skill/Skill_Tornado.cs | 9 +++++---- Assets/Script/Server/ServerClass.cs | 10 ++++++++-- Assets/Script/UI/PC/Job/PCJobUI_OpenCondition.cs | 4 ++-- Packages/packages-lock.json | 2 +- ProjectSettings/ProjectSettings.asset | 4 ++-- 17 files changed, 57 insertions(+), 44 deletions(-) diff --git a/Assets/Ino_nerdnavis.txt b/Assets/Ino_nerdnavis.txt index 5c788292f..dd2039c84 100644 --- a/Assets/Ino_nerdnavis.txt +++ b/Assets/Ino_nerdnavis.txt @@ -44,11 +44,4 @@ classconfig 에 의해 정해짐 스킬 미리 로드 -//1. 로비에 벽 추가 (추가 후 컬링 적용) -//2. 기본 스킬 구성 변경 및 펫(박쥐) 변경 -3. 조작 관련 버그 수정 -암튼 위 3가지만 수정하고 빌드 마무리하면 될 것 같습니다 -조작 관련 버그는 모바일 환경에서만 그런건지는 모르겠는데 이동중에 카메라 회전하면 -다시 캐릭터가 원래 위치로 막 돌아가는 현상이 있더라고요 -+@로 공격할 때 미끄러지면서 나아가는 것도요 diff --git a/Assets/Res_Addr/Skill/Skill_StraightBurst.prefab b/Assets/Res_Addr/Skill/Skill_StraightBurst.prefab index 73a84732a..c377b5941 100644 --- a/Assets/Res_Addr/Skill/Skill_StraightBurst.prefab +++ b/Assets/Res_Addr/Skill/Skill_StraightBurst.prefab @@ -133771,6 +133771,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Pierce: 0 str_HitEffect: + m_distance: 1.5 gos_effect: - {fileID: 3630125633165480175} - {fileID: 3636810399003602678} @@ -148813,7 +148814,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4453321064166218, guid: 9c1140a4748eb1542bc76f156e936e7b, type: 3} propertyPath: m_LocalPosition.y - value: -0.5 + value: -0.8 objectReference: {fileID: 0} - target: {fileID: 4453321064166218, guid: 9c1140a4748eb1542bc76f156e936e7b, type: 3} propertyPath: m_LocalPosition.z @@ -148954,7 +148955,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4453321064166218, guid: 9c1140a4748eb1542bc76f156e936e7b, type: 3} propertyPath: m_LocalPosition.y - value: -0.5 + value: -0.8 objectReference: {fileID: 0} - target: {fileID: 4453321064166218, guid: 9c1140a4748eb1542bc76f156e936e7b, type: 3} propertyPath: m_LocalPosition.z @@ -149095,7 +149096,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4453321064166218, guid: 9c1140a4748eb1542bc76f156e936e7b, type: 3} propertyPath: m_LocalPosition.y - value: -0.5 + value: -0.8 objectReference: {fileID: 0} - target: {fileID: 4453321064166218, guid: 9c1140a4748eb1542bc76f156e936e7b, type: 3} propertyPath: m_LocalPosition.z @@ -149236,7 +149237,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4453321064166218, guid: 9c1140a4748eb1542bc76f156e936e7b, type: 3} propertyPath: m_LocalPosition.y - value: -0.5 + value: -0.8 objectReference: {fileID: 0} - target: {fileID: 4453321064166218, guid: 9c1140a4748eb1542bc76f156e936e7b, type: 3} propertyPath: m_LocalPosition.z @@ -149377,7 +149378,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4453321064166218, guid: 9c1140a4748eb1542bc76f156e936e7b, type: 3} propertyPath: m_LocalPosition.y - value: -0.5 + value: -0.8 objectReference: {fileID: 0} - target: {fileID: 4453321064166218, guid: 9c1140a4748eb1542bc76f156e936e7b, type: 3} propertyPath: m_LocalPosition.z diff --git a/Assets/Script/Character/Actor.cs b/Assets/Script/Character/Actor.cs index 1ff694322..8e526c2d9 100644 --- a/Assets/Script/Character/Actor.cs +++ b/Assets/Script/Character/Actor.cs @@ -646,17 +646,17 @@ public class Actor : MyCoroutine protected virtual void Projectile_To_Target(string _proj) { Reset_AttackCoolTime(); - ProjectileInfo.Ins.Shoot_Projectile(_proj, this, m_Target, 1f, Get_ProjectileStartPos() ); + ProjectileInfo.Ins.Shoot_Projectile(_proj, this, m_Target, 1f, Get_CenterPositionFoward() ); } protected virtual void Projectile_To_Target2(string _proj) { Reset_AttackCoolTime(); - ProjectileInfo.Ins.Shoot_Projectile(_proj, this, m_Target, 1f, Get_ProjectileStartPos()); + ProjectileInfo.Ins.Shoot_Projectile(_proj, this, m_Target, 1f, Get_CenterPositionFoward()); } protected virtual void Projectile_To_Target3(string _proj) { Reset_AttackCoolTime(); - ProjectileInfo.Ins.Shoot_Projectile(_proj, this, m_Target, 1f, Get_ProjectileStartPos()); + ProjectileInfo.Ins.Shoot_Projectile(_proj, this, m_Target, 1f, Get_CenterPositionFoward()); } protected virtual void Heal_To_Target() { } protected virtual void Set_Script() { } @@ -816,8 +816,8 @@ public class Actor : MyCoroutine return new Vector3(transform.position.x, transform.position.y + ObjSize.y * 0.5f, transform.position.z); } public Vector3 Get_Top_postion() { return tf_HUD_Dmg.position; } - public Vector3 Get_ProjectileStartPos() { return Get_Center_position() + transform.forward; } - public Vector3 Get_PositionFoward() { return Get_position() + transform.forward; } + public Vector3 Get_CenterPositionFoward(float dist = 1f) { return Get_Center_position() + transform.forward * dist; } + public Vector3 Get_PositionFoward(float dist = 1f) { return Get_position() + transform.forward * dist; } public float Get_ScaleSizeDist() { return transform.localScale.x > 2f ? ObjSize.z * 0.5f : 0f; } public ActorStatInfo Get_StatInfo() { return m_Stat; } public double Get_HP() { return m_Stat.Get_Stat(eStat.HP); } @@ -1798,7 +1798,8 @@ public class Actor : MyCoroutine if (SettingsMain.Ins) SettingsMain.Ins.Add_Event(System.Reflection.MethodBase.GetCurrentMethod().Name, 1, a); #endif Shoot_Skill(); - m_NavMeshAgent.isStopped = false; + if (m_NavMeshAgent.isOnNavMesh) + m_NavMeshAgent.isStopped = false; } public virtual void Indicator(int a) { diff --git a/Assets/Script/Character/Mob/BossMobActor.cs b/Assets/Script/Character/Mob/BossMobActor.cs index 4c55945ce..f103f48e9 100644 --- a/Assets/Script/Character/Mob/BossMobActor.cs +++ b/Assets/Script/Character/Mob/BossMobActor.cs @@ -51,7 +51,7 @@ public class BossMobActor : MobActor { // 데미지 투사체 생성 m_animation.speed = m_attackspeed; - var startpos = Get_ProjectileStartPos(); + var startpos = Get_CenterPositionFoward(); if (ProjectileInfo.Ins) { if (index == 0) diff --git a/Assets/Script/Character/Mob/MobActor.cs b/Assets/Script/Character/Mob/MobActor.cs index bba159623..7e1803cd0 100644 --- a/Assets/Script/Character/Mob/MobActor.cs +++ b/Assets/Script/Character/Mob/MobActor.cs @@ -469,7 +469,7 @@ public class MobActor : Actor { base.Projectile(s); if (ProjectileInfo.Ins) - ProjectileInfo.Ins.Shoot_Projectile(m_MonsterTableData.s_Porjectile1, this, m_Target, 1f, Get_ProjectileStartPos(), + ProjectileInfo.Ins.Shoot_Projectile(m_MonsterTableData.s_Porjectile1, this, m_Target, 1f, Get_CenterPositionFoward(), m_MonsterTableData.f_ProjectileLifeTime1); } diff --git a/Assets/Script/Character/MyActor.cs b/Assets/Script/Character/MyActor.cs index 672bc0fb4..c239987c7 100644 --- a/Assets/Script/Character/MyActor.cs +++ b/Assets/Script/Character/MyActor.cs @@ -252,7 +252,7 @@ public class MyActor : Actor base.Projectile(s); if (ProjectileInfo.Ins) { - var startpos = Get_ProjectileStartPos(); + var startpos = Get_CenterPositionFoward(); var lifeTime = table_effectlist.Ins.Get_Data(s).f_ProjectileLifeTime; ProjectileInfo.Ins.Shoot_Projectile(s, this, m_Target, 1f, startpos, lifeTime); } diff --git a/Assets/Script/Character/PC/WizardActor.cs b/Assets/Script/Character/PC/WizardActor.cs index c2bd09df9..dc01e7bca 100644 --- a/Assets/Script/Character/PC/WizardActor.cs +++ b/Assets/Script/Character/PC/WizardActor.cs @@ -28,7 +28,7 @@ public class WizardActor : PCActor void Shoot_MagicMissile() { - ProjectileInfo.Ins.Shoot_Projectile("MagicMissile", this, m_Target, m_DamageRate, Get_ProjectileStartPos(), 10f); + ProjectileInfo.Ins.Shoot_Projectile("MagicMissile", this, m_Target, m_DamageRate, Get_CenterPositionFoward(), 10f); #if UNITY_EDITOR if (UnityEngine.SceneManagement.SceneManager.GetActiveScene().name == "StatTest") return; #endif diff --git a/Assets/Script/Character/PetActor.cs b/Assets/Script/Character/PetActor.cs index aeffd77ac..65c48cbd0 100644 --- a/Assets/Script/Character/PetActor.cs +++ b/Assets/Script/Character/PetActor.cs @@ -155,15 +155,15 @@ public class PetActor : MyActor protected override void Projectile_To_Target(string _proj) { - ProjectileInfo.Ins.Shoot_Projectile(_proj, this, m_Target, 1f, Get_ProjectileStartPos()); + ProjectileInfo.Ins.Shoot_Projectile(_proj, this, m_Target, 1f, Get_CenterPositionFoward()); } protected override void Projectile_To_Target2(string _proj) { - ProjectileInfo.Ins.Shoot_Projectile(_proj, this, m_Target, 1f, Get_ProjectileStartPos()); + ProjectileInfo.Ins.Shoot_Projectile(_proj, this, m_Target, 1f, Get_CenterPositionFoward()); } protected override void Projectile_To_Target3(string _proj) { - ProjectileInfo.Ins.Shoot_Projectile(_proj, this, m_Target, 1f, Get_ProjectileStartPos()); + ProjectileInfo.Ins.Shoot_Projectile(_proj, this, m_Target, 1f, Get_CenterPositionFoward()); } PetActor LinkPet; diff --git a/Assets/Script/Character/Projectile/ProjectileBase.cs b/Assets/Script/Character/Projectile/ProjectileBase.cs index 15c4d301a..036ebfa76 100644 --- a/Assets/Script/Character/Projectile/ProjectileBase.cs +++ b/Assets/Script/Character/Projectile/ProjectileBase.cs @@ -154,10 +154,10 @@ public class ProjectileBase : MonoBehaviour switch (_data.eStartPos) { - case eProjectileStartPos.Shooter: transform.position = _data.shooter.Get_ProjectileStartPos(); break; - case eProjectileStartPos.ShooterCenter: transform.position = _data.shooter.Get_ProjectileStartPos(); break; - default: transform.position = _data.target.Get_ProjectileStartPos(); break; - case eProjectileStartPos.TargetCenter: transform.position = _data.target.Get_ProjectileStartPos(); break; + case eProjectileStartPos.Shooter: transform.position = _data.shooter.Get_CenterPositionFoward(); break; + case eProjectileStartPos.ShooterCenter: transform.position = _data.shooter.Get_CenterPositionFoward(); break; + default: transform.position = _data.target.Get_CenterPositionFoward(); break; + case eProjectileStartPos.TargetCenter: transform.position = _data.target.Get_CenterPositionFoward(); break; case eProjectileStartPos.Custom: transform.position = _data.v3_StartPos; break; } @@ -183,6 +183,12 @@ public class ProjectileBase : MonoBehaviour transform.eulerAngles = _data.shooter.transform.eulerAngles; } + protected void LookAt_ShooterFoward() + { + transform.rotation = m_ProjectTileData.shooter.transform.rotation; + transform.eulerAngles = new Vector3(0f, transform.eulerAngles.y); + } + /// /// 쿨타임을 감소시킨다. f_ExtraValue1 값을 사용한다. /// diff --git a/Assets/Script/Character/Projectile/Skill/Skill_IceBolt.cs b/Assets/Script/Character/Projectile/Skill/Skill_IceBolt.cs index 41101a747..4b1c577f9 100644 --- a/Assets/Script/Character/Projectile/Skill/Skill_IceBolt.cs +++ b/Assets/Script/Character/Projectile/Skill/Skill_IceBolt.cs @@ -3,7 +3,7 @@ public class Skill_IceBolt : ProjectileTest public override void Set(ProjectileData _data) { _data.eStartPos = eProjectileStartPos.Custom; - _data.v3_StartPos = _data.shooter.Get_ProjectileStartPos(); + _data.v3_StartPos = _data.shooter.Get_CenterPositionFoward(); base.Set(_data); // 공속이 추가로 감소 diff --git a/Assets/Script/Character/Projectile/Skill/Skill_ShieldAttack.cs b/Assets/Script/Character/Projectile/Skill/Skill_ShieldAttack.cs index 378c936d6..62ba59bea 100644 --- a/Assets/Script/Character/Projectile/Skill/Skill_ShieldAttack.cs +++ b/Assets/Script/Character/Projectile/Skill/Skill_ShieldAttack.cs @@ -6,7 +6,7 @@ public class Skill_ShieldAttack : ProjectileBase public override void Set(ProjectileData _data) { _data.eStartPos = eProjectileStartPos.Custom; - _data.v3_StartPos = _data.shooter.Get_ProjectileStartPos(); + _data.v3_StartPos = _data.shooter.Get_CenterPositionFoward(); base.Set(_data); if (IsStep(1)) m_ProjectTileData.CC_AddTime = Get_AwakenData(1, 1); if (IsStep(2)) m_ProjectTileData.CC_AddDmg = Get_AwakenData(2, 1); diff --git a/Assets/Script/Character/Projectile/Skill/Skill_StraightBurst.cs b/Assets/Script/Character/Projectile/Skill/Skill_StraightBurst.cs index 4b2cd593d..8a1ab8785 100644 --- a/Assets/Script/Character/Projectile/Skill/Skill_StraightBurst.cs +++ b/Assets/Script/Character/Projectile/Skill/Skill_StraightBurst.cs @@ -3,13 +3,18 @@ using UnityEngine; public class Skill_StraightBurst : ProjectileBase { + [Header("ijͿ Ÿ")] + public float m_distance = 1.5f; + public GameObject[] gos_effect, go_hiteffect; public override void Set(ProjectileData _data) { - _data.eStartPos = eProjectileStartPos.Shooter; - _data.LookTarget = false; + _data.eStartPos = eProjectileStartPos.Custom; + _data.v3_StartPos = _data.shooter.Get_CenterPositionFoward(m_distance); base.Set(_data); + LookAt_ShooterFoward(); + DSUtil.InActivateGameObjects(gos_effect); DSUtil.InActivateGameObjects(go_hiteffect); diff --git a/Assets/Script/Character/Projectile/Skill/Skill_Tornado.cs b/Assets/Script/Character/Projectile/Skill/Skill_Tornado.cs index b1e095572..55e8ae143 100644 --- a/Assets/Script/Character/Projectile/Skill/Skill_Tornado.cs +++ b/Assets/Script/Character/Projectile/Skill/Skill_Tornado.cs @@ -3,19 +3,20 @@ using UnityEngine; public class Skill_Tornado : ProjectileBase { + [Header("ijͿ Ÿ")] + public float m_distance = 1.5f; + public override void Set(ProjectileData _data) { _data.eStartPos = eProjectileStartPos.Custom; - _data.v3_StartPos = _data.shooter.Get_position() + (_data.shooter.transform.forward * 1.5f); + _data.v3_StartPos = _data.shooter.Get_PositionFoward(m_distance); base.Set(_data); + LookAt_ShooterFoward(); m_ProjectTileData.CC_AddVal1 = IsStep(1) ? Get_AwakenData(1, 1) : 0; m_ProjectTileData.CC_AddVal2 = IsStep(2) ? Get_AwakenData(2, 1) : 0; m_ProjectTileData.CC_AddDmg = IsStep(3) ? Get_AwakenData(3, 1) : 0; - transform.rotation = _data.shooter.transform.rotation; - transform.eulerAngles = new Vector3(0f, transform.eulerAngles.y); - StartCoroutine(Co_Updata()); } diff --git a/Assets/Script/Server/ServerClass.cs b/Assets/Script/Server/ServerClass.cs index 1003ea468..c10be4f3e 100644 --- a/Assets/Script/Server/ServerClass.cs +++ b/Assets/Script/Server/ServerClass.cs @@ -1953,14 +1953,20 @@ public partial class ServerData } public bool IsObtainItem(int id) { - var itemdata = table_itemlist.Ins.Get_Data(id); var key = Get_Key(id); if (Item.ContainsKey(key)) return true; else if (Equipment.ContainsKey(key)) return true; else if (Enchant.ContainsKey(key)) return true; else if (Pet.ContainsKey(key)) return true; else if (Relic.ContainsKey(key)) return true; - else if (itemdata.e_ItemType == eItem.PC) return PC.IsObtainPC(id); + else + { + var itemdata = table_itemlist.Ins.Get_Data(id); + if (!DSUtil.CheckNull(itemdata)) + { + if (itemdata.e_ItemType == eItem.PC) return PC.IsObtainPC(id); + } + } return false; } public bool IsEquipItem(int id, int preset = 0) diff --git a/Assets/Script/UI/PC/Job/PCJobUI_OpenCondition.cs b/Assets/Script/UI/PC/Job/PCJobUI_OpenCondition.cs index f77aa6a8e..4316d23a9 100644 --- a/Assets/Script/UI/PC/Job/PCJobUI_OpenCondition.cs +++ b/Assets/Script/UI/PC/Job/PCJobUI_OpenCondition.cs @@ -59,14 +59,14 @@ public class PCJobUI_OpenCondition : MonoBehaviour if (sdata.PC.IsObtainPC(m_ClassId)) return false; // linkedId1 확인 - if (!sdata.IsObtainItem(m_Data.n_linkedClass1)) + if (m_Data.n_linkedClass1 > 0 && !sdata.IsObtainItem(m_Data.n_linkedClass1)) { if (showtoast) ToastUI.Ins.Set(254); return false; } // linkedId2 확인 - if (!sdata.IsObtainItem(m_Data.n_linkedClass2)) + if (m_Data.n_linkedClass2 > 0 && !sdata.IsObtainItem(m_Data.n_linkedClass2)) { if (showtoast) ToastUI.Ins.Set(254); return false; diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index ec893135b..c9a34bfea 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -184,7 +184,7 @@ "url": "https://packages.unity.com" }, "com.unity.services.core": { - "version": "1.12.5", + "version": "1.14.0", "depth": 1, "source": "registry", "dependencies": { diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index afed991e4..7df80b63a 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -79,7 +79,7 @@ PlayerSettings: androidAutoRotationBehavior: 1 defaultIsNativeResolution: 1 macRetinaSupport: 1 - runInBackground: 0 + runInBackground: 1 captureSingleScreen: 0 muteOtherAudioSources: 0 Prepare IOS For Recording: 0 @@ -140,7 +140,7 @@ PlayerSettings: loadStoreDebugModeEnabled: 0 visionOSBundleVersion: 1.0 tvOSBundleVersion: 1.0 - bundleVersion: 0.0.1 + bundleVersion: 9.9.9 preloadedAssets: [] metroInputSource: 0 wsaTransparentSwapchain: 0