mirror of
https://bitbucket.org/Ioncannon/project-meteor-server.git
synced 2025-05-20 08:26:59 -04:00
added mob name colour update
- added mobmods (need to be loaded from db) - added Zone.GetBattleNpcById - added missing IsValidTarget check in AttackState
This commit is contained in:
@@ -6,6 +6,7 @@ using System.Threading.Tasks;
|
||||
using FFXIVClassic_Map_Server.Actors;
|
||||
using MoonSharp;
|
||||
using MoonSharp.Interpreter;
|
||||
using FFXIVClassic_Map_Server.lua;
|
||||
|
||||
namespace FFXIVClassic_Map_Server.actors.chara.ai
|
||||
{
|
||||
@@ -15,8 +16,9 @@ namespace FFXIVClassic_Map_Server.actors.chara.ai
|
||||
public uint durationMs;
|
||||
public bool checkState;
|
||||
// todo: lua function
|
||||
Script script;
|
||||
LuaScript script;
|
||||
}
|
||||
|
||||
class ActionQueue
|
||||
{
|
||||
private Character owner;
|
||||
@@ -27,7 +29,9 @@ namespace FFXIVClassic_Map_Server.actors.chara.ai
|
||||
|
||||
public ActionQueue(Character owner)
|
||||
{
|
||||
|
||||
this.owner = owner;
|
||||
actionQueue = new Queue<Action>();
|
||||
timerQueue = new Queue<Action>();
|
||||
}
|
||||
|
||||
public void PushAction(Action action)
|
||||
@@ -45,5 +49,9 @@ namespace FFXIVClassic_Map_Server.actors.chara.ai
|
||||
|
||||
}
|
||||
|
||||
public void CheckAction(DateTime tick)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -363,8 +363,12 @@ namespace FFXIVClassic_Map_Server.actors.chara.ai.controllers
|
||||
public override void ChangeTarget(Character target)
|
||||
{
|
||||
owner.target = target;
|
||||
owner.currentLockedTarget = target != null ? target.actorId : 0xC0000000;
|
||||
owner.currentTarget = target != null ? target.actorId : 0xC0000000;
|
||||
owner.currentLockedTarget = target?.actorId ?? 0xC0000000;
|
||||
owner.currentTarget = target?.actorId ?? 0xC0000000;
|
||||
|
||||
foreach (var player in owner.zone.GetActorsAroundActor<Player>(owner, 50))
|
||||
player.QueuePacket(owner.GetHateTypePacket(player));
|
||||
|
||||
base.ChangeTarget(target);
|
||||
}
|
||||
}
|
||||
|
@@ -155,7 +155,7 @@ namespace FFXIVClassic_Map_Server.actors.chara.ai.state
|
||||
owner.aiContainer.ChangeTarget(null);
|
||||
return false;
|
||||
}
|
||||
else if (!owner.aiContainer.GetTargetFind().CanTarget(target, false, true))
|
||||
else if (!owner.IsValidTarget(target, ValidTarget.Enemy) || !owner.aiContainer.GetTargetFind().CanTarget(target, false, true))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
Reference in New Issue
Block a user