fix ontarget but aoe skill
This commit is contained in:
@@ -15,7 +15,7 @@ MonoBehaviour:
|
||||
m_DefaultGroup: 712e3991f28e549e7a56ee582a977810
|
||||
m_currentHash:
|
||||
serializedVersion: 2
|
||||
Hash: 604dc303c2afde1971b4eda2116ad3c8
|
||||
Hash: 00000000000000000000000000000000
|
||||
m_OptimizeCatalogSize: 0
|
||||
m_BuildRemoteCatalog: 0
|
||||
m_CatalogRequestsTimeout: 0
|
||||
|
||||
@@ -80,6 +80,11 @@ MonoBehaviour:
|
||||
m_ReadOnly: 0
|
||||
m_SerializedLabels: []
|
||||
FlaggedDuringContentUpdateRestriction: 0
|
||||
- m_GUID: 0c0d0e0020ae4d546b62056815176bc0
|
||||
m_Address: "gfx/\u7B56\u5212\u8054\u5165/\u4EBA\u7269\u6280\u80FD/\u51FB\u4E2D/\u706B\u6D77\u5200\u5C71\u51FB\u4E2D.gfx"
|
||||
m_ReadOnly: 0
|
||||
m_SerializedLabels: []
|
||||
FlaggedDuringContentUpdateRestriction: 0
|
||||
- m_GUID: 0de7e3933d738b54d9584f3523642248
|
||||
m_Address: "gfx/\u4EBA\u7269/\u6280\u80FD/\u6B66\u4FA0/\u91D1\u949F\u7F691.gfx"
|
||||
m_ReadOnly: 0
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c90db784f47aca643935a0fc667ca7af
|
||||
guid: 0c0d0e0020ae4d546b62056815176bc0
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@@ -9,8 +9,8 @@ namespace BrewMonster
|
||||
/// <summary>NDJSON debug session logger (agent instrumentation).</summary>
|
||||
public static class DebugSessionLog
|
||||
{
|
||||
const string LogPath = @"c:\Hoang\PW\debug-f32222.log";
|
||||
const string SessionId = "f32222";
|
||||
const string LogPath = @"c:\Hoang\PW\debug-a9c674.log";
|
||||
const string SessionId = "a9c674";
|
||||
|
||||
public static void Write(string location, string message, string hypothesisId, object data, string runId = "pre-fix")
|
||||
{
|
||||
@@ -38,11 +38,22 @@ namespace BrewMonster
|
||||
public bool castInTargets;
|
||||
public bool alreadyFired;
|
||||
public int flyClusterCount;
|
||||
public int flyDelayMs;
|
||||
public int eventId;
|
||||
public string flyGfx;
|
||||
public string prevState;
|
||||
public string newState;
|
||||
public int frame;
|
||||
public float spawnX;
|
||||
public float spawnY;
|
||||
public float spawnZ;
|
||||
public float targetX;
|
||||
public float targetY;
|
||||
public float targetZ;
|
||||
public float radius;
|
||||
public float offsetMag;
|
||||
public bool isCluster;
|
||||
public bool isArea;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -109,6 +109,12 @@ public class CECPendingLogoutHalf : CECPendingAction
|
||||
bool bSuccess = false;
|
||||
if (IsInGame())
|
||||
{
|
||||
#region agent log
|
||||
#if UNITY_EDITOR || DEVELOPMENT_BUILD
|
||||
DebugSessionLog.Write("CECPendingLogoutHalf.Execute", "logout_half_execute", "E",
|
||||
new DebugSessionPayload { frame = Time.frameCount });
|
||||
#endif
|
||||
#endregion
|
||||
// TODO: currently, we logout logic != C++, need to implement properly
|
||||
GetGameSession().c2s_SendCmdLogout(PendingActionConstants._PLAYER_LOGOUT_HALF);
|
||||
// UnityGameSession.ReturnToSelectRole();
|
||||
|
||||
@@ -151,7 +151,7 @@ namespace BrewMonster
|
||||
#region agent log
|
||||
#if UNITY_EDITOR || DEVELOPMENT_BUILD
|
||||
DebugSessionLog.Write("A3DSkillGfxMan.AddOneSkillGfxEvent", "add_gfx_event", "C",
|
||||
new DebugSessionPayload { eventId = pEvent.m_debugEventId, hostId = (int)nHostID, targetId = (int)nTargetID, flyGfx = szFlyGfx ?? "" });
|
||||
new DebugSessionPayload { eventId = pEvent.m_debugEventId, hostId = (int)nHostID, targetId = (int)nTargetID, flyGfx = szFlyGfx ?? "", flyDelayMs = (int)dwDelayTime });
|
||||
#endif
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -376,6 +376,7 @@ namespace BrewMonster
|
||||
200, // timeToBeFired
|
||||
1000 // timeToDoDamage
|
||||
);
|
||||
BMLogger.LogError("HoangDev: idTarget:" + idTarget);
|
||||
m_targets.AddLast(newEvent);
|
||||
#if UNITY_EDITOR
|
||||
if (m_AttackList.Count == 0)
|
||||
@@ -630,12 +631,37 @@ namespace BrewMonster
|
||||
m_bFadeOut = stub.m_bFadeOut;
|
||||
m_bRelScl = stub.m_bRelScl;
|
||||
m_fDefTarScl = stub.m_fDefTarScl;
|
||||
//m_param = stub.m_param;
|
||||
m_param = BuildSkillParam(stub);
|
||||
m_szFlySfxPath = stub.m_szFlySfxPath ?? string.Empty;
|
||||
m_szHitSfxPath = stub.m_szHitSfxPath ?? string.Empty;
|
||||
m_szHitGrndSfxPath = stub.m_szHitGrndSfxPath ?? string.Empty;
|
||||
}
|
||||
|
||||
static GFX_SKILL_PARAM BuildSkillParam(BrewMonster.Scripts.Skills.SkillStub stub)
|
||||
{
|
||||
var param = new GFX_SKILL_PARAM
|
||||
{
|
||||
m_bArea = stub.m_bArea,
|
||||
m_Shape = stub.m_Shape,
|
||||
m_vSize = new A3DVECTOR3(stub.m_vGfxSize.x, stub.m_vGfxSize.y, stub.m_vGfxSize.z)
|
||||
};
|
||||
|
||||
switch (stub.m_paramType)
|
||||
{
|
||||
case GfxSkillValType.enumGfxSkillBool:
|
||||
param.value = new GFX_SKILL_PARAM.ValueUnion { bVal = stub.m_paramFloatVal != 0f };
|
||||
break;
|
||||
case GfxSkillValType.enumGfxSkillFloat:
|
||||
param.value = new GFX_SKILL_PARAM.ValueUnion { fVal = stub.m_paramFloatVal };
|
||||
break;
|
||||
default:
|
||||
param.value = new GFX_SKILL_PARAM.ValueUnion { nVal = (int)stub.m_paramFloatVal };
|
||||
break;
|
||||
}
|
||||
|
||||
return param;
|
||||
}
|
||||
|
||||
// GFX prefab accessors / GFX预制体访问器
|
||||
public GameObject GetFlyGFX() => m_szFlyGfx;
|
||||
public GameObject GetHitGFX() => m_szHitGfx;
|
||||
@@ -706,18 +732,11 @@ namespace BrewMonster
|
||||
m_bFadeOut = skillStub.m_bFadeOut;
|
||||
m_bRelScl = skillStub.m_bRelScl;
|
||||
m_fDefTarScl = skillStub.m_fDefTarScl;
|
||||
m_param = BuildSkillParam(skillStub);
|
||||
|
||||
m_szFlySfxPath = skillStub.m_szFlySfxPath ?? string.Empty;
|
||||
m_szHitSfxPath = skillStub.m_szHitSfxPath ?? string.Empty;
|
||||
m_szHitGrndSfxPath = skillStub.m_szHitGrndSfxPath ?? string.Empty;
|
||||
|
||||
// Area / 区域
|
||||
/* m_param.m_bArea = skillStub.m_bArea;
|
||||
m_param.m_Shape = skillStub.m_Shape;
|
||||
m_param.m_vSize = skillStub.m_vSize;
|
||||
|
||||
// Param value / 参数值
|
||||
m_param.value = skillStub.m_param.value;*/
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -817,6 +836,7 @@ namespace BrewMonster
|
||||
|
||||
if (nCastTargetID == tar.idTarget)
|
||||
bCastInTargets = true;
|
||||
BMLogger.LogError("HoangDev: nCastTargetID:"+nCastTargetID);
|
||||
AddOneTarget(nCastTargetID, nHostID, szFly, szHit, tar, i == 0, bIsGoblinSkill);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -140,15 +140,14 @@ namespace BrewMonster
|
||||
m_bRelScl = true;
|
||||
m_fDefTarScl = 1.5f;
|
||||
|
||||
// Area parameters (commented out) / 区域参数(已注释)
|
||||
// m_bArea = false;
|
||||
// m_Shape = (EmitShape)0;
|
||||
// m_vSize = new Vector3(0.0f, 0.0f, 0.0f);
|
||||
// Area parameters / 区域参数
|
||||
m_bArea = false;
|
||||
m_Shape = EmitShape.enumBox;
|
||||
m_vGfxSize = Vector3.zero;
|
||||
|
||||
// Param (commented out) / 参数(已注释)
|
||||
// m_paramType = (GfxSkillValType)2;
|
||||
// m_param = new GFX_SKILL_PARAM();
|
||||
// m_param.fVal = 8.0f;
|
||||
// Param radius for OnTarget cluster spread / OnTarget群集散布半径
|
||||
m_paramType = GfxSkillValType.enumGfxSkillFloat;
|
||||
m_paramFloatVal = 8.0f;
|
||||
restrict_weapons.Add(292);
|
||||
restrict_weapons.Add(0);
|
||||
range = new Range();
|
||||
|
||||
@@ -140,15 +140,14 @@ namespace BrewMonster
|
||||
m_bRelScl = true;
|
||||
m_fDefTarScl = 1.8f;
|
||||
|
||||
// Area parameters (commented out) / 区域参数(已注释)
|
||||
// m_bArea = false;
|
||||
// m_Shape = (EmitShape)0;
|
||||
// m_vSize = new Vector3(0.0f, 0.0f, 0.0f);
|
||||
// Area parameters / 区域参数
|
||||
m_bArea = false;
|
||||
m_Shape = EmitShape.enumBox;
|
||||
m_vGfxSize = Vector3.zero;
|
||||
|
||||
// Param (commented out) / 参数(已注释)
|
||||
// m_paramType = (GfxSkillValType)2;
|
||||
// m_param = new GFX_SKILL_PARAM();
|
||||
// m_param.fVal = 8.0f;
|
||||
// Param radius for OnTarget cluster spread / OnTarget群集散布半径
|
||||
m_paramType = GfxSkillValType.enumGfxSkillFloat;
|
||||
m_paramFloatVal = 8.0f;
|
||||
restrict_weapons.Add(292);
|
||||
restrict_weapons.Add(0);
|
||||
range = new Range();
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
using BrewMonster.Assets.PerfectWorld.Scripts.Skills;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BrewMonster.Scripts.Skills
|
||||
{
|
||||
@@ -791,6 +792,11 @@ namespace BrewMonster.Scripts.Skills
|
||||
public bool m_bFadeOut = false;
|
||||
public bool m_bRelScl = true;
|
||||
public float m_fDefTarScl = 1.8f;
|
||||
public bool m_bArea = false;
|
||||
public EmitShape m_Shape = EmitShape.enumBox;
|
||||
public Vector3 m_vGfxSize = Vector3.zero;
|
||||
public GfxSkillValType m_paramType = GfxSkillValType.enumGfxSkillInt;
|
||||
public float m_paramFloatVal = 0f;
|
||||
|
||||
// ������� // Combo related
|
||||
public int combosk_preskill;
|
||||
|
||||
@@ -25,11 +25,11 @@ namespace BrewMonster
|
||||
public override void StartMove(Vector3 vHost, Vector3 vTarget)
|
||||
{
|
||||
m_vPos = vTarget;
|
||||
/*m_vMoveDir = vTarget - vHost;
|
||||
m_vMoveDir.y = 0; // C++: zero out Y before normalize
|
||||
m_vMoveDir = vTarget - vHost;
|
||||
m_vMoveDir.y = 0;
|
||||
if (Normalize(ref m_vMoveDir) == 0)
|
||||
{
|
||||
m_vMoveDir = Vector3.forward; // _unit_z
|
||||
m_vMoveDir = Vector3.forward;
|
||||
}
|
||||
|
||||
if (m_bOneOfCluser)
|
||||
@@ -44,8 +44,27 @@ namespace BrewMonster
|
||||
else
|
||||
{
|
||||
m_vOffset = Vector3.zero;
|
||||
}*/
|
||||
}
|
||||
|
||||
#region agent log
|
||||
#if UNITY_EDITOR || DEVELOPMENT_BUILD
|
||||
DebugSessionLog.Write("CGfxOnTargetMove.StartMove", "on_target_start", "F",
|
||||
new DebugSessionPayload
|
||||
{
|
||||
spawnX = m_vPos.x,
|
||||
spawnY = m_vPos.y,
|
||||
spawnZ = m_vPos.z,
|
||||
targetX = vTarget.x,
|
||||
targetY = vTarget.y,
|
||||
targetZ = vTarget.z,
|
||||
radius = m_fRadius,
|
||||
offsetMag = m_vOffset.magnitude,
|
||||
isCluster = m_bOneOfCluser,
|
||||
isArea = m_bArea,
|
||||
frame = Time.frameCount
|
||||
});
|
||||
#endif
|
||||
#endregion
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -54,10 +73,7 @@ namespace BrewMonster
|
||||
/// </summary>
|
||||
public override bool TickMove(uint dwDeltaTime, Vector3 vHostPos, Vector3 vTargetPos)
|
||||
{
|
||||
/* BMLogger.LogError("CGfxOnTargetMove Tick");
|
||||
Vector3 oldPos = m_vPos;
|
||||
m_vPos = vTargetPos + m_vOffset;*/
|
||||
|
||||
m_vPos = vTargetPos + m_vOffset;
|
||||
return false; // C++ returns false — hit triggered by fly time timeout
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user