1
Fork 0
mirror of https://bitbucket.org/Ioncannon/project-meteor-server.git synced 2025-04-23 21:27:46 +00:00

cleaned up some of my retard with deltaTime and changed to DateTime for convenience swapping between seconds/milliseconds

This commit is contained in:
Tahir Akhlaq 2017-06-12 22:07:50 +01:00
parent 3bcaa4cc3e
commit b9bfe5e985
9 changed files with 27 additions and 20 deletions

View file

@ -956,8 +956,9 @@ namespace FFXIVClassic_Map_Server
{
lock (zoneList)
{
var tick = DateTime.Now;
foreach (Zone zone in zoneList.Values)
zone.Update(MILIS_LOOPTIME);
zone.Update(tick);
}
}
@ -978,7 +979,7 @@ namespace FFXIVClassic_Map_Server
}
public Actor GetActorInWorld(uint charId)
{
{
foreach (Zone zone in zoneList.Values)
{
Actor a = zone.FindActorInZone(charId);

View file

@ -368,15 +368,15 @@ namespace FFXIVClassic_Map_Server.Actors
zone.BroadcastPacketAroundActor(this, ChangeSpeedPacket);
}
public void Update(double deltaTime)
public void Update(DateTime tick)
{
if (this is Character)
{
((Character)this).Update(deltaTime);
((Character)this).Update(tick);
}
else if (this is Zone)
{
((Zone)this).Update(deltaTime);
((Zone)this).Update(tick);
}
}

View file

@ -526,12 +526,12 @@ namespace FFXIVClassic_Map_Server.Actors
return null;
}
public void Update(double deltaTime)
public void Update(DateTime tick)
{
lock (mActorList)
{
foreach (Actor a in mActorList.Values)
a.Update(deltaTime);
a.Update(tick);
}
}

View file

@ -163,11 +163,11 @@ namespace FFXIVClassic_Map_Server.actors.area
}
}
public void Update(double deltaTime)
public void Update(DateTime tick)
{
// todo: again, this is retarded but debug stuff
var diffTime = DateTime.Now - lastUpdate;
base.Update(deltaTime);
var diffTime = tick - lastUpdate;
base.Update(tick);
// arbitrary cap
if (diffTime.Milliseconds >= 33)

View file

@ -221,7 +221,7 @@ namespace FFXIVClassic_Map_Server.Actors
}
}
public void Update(double deltaTime)
public void Update(DateTime tick)
{
// todo: actual ai controllers
// todo: mods to control different params instead of hardcode
@ -231,11 +231,11 @@ namespace FFXIVClassic_Map_Server.Actors
if (aiContainer != null)
{
this.aiContainer.Update(DateTime.Now);
this.aiContainer.Update(tick);
}
/*
var diffTime = (DateTime.Now - lastAiUpdate);
var diffTime = (tick - lastAiUpdate);
if (this is Player)
{
@ -248,7 +248,7 @@ namespace FFXIVClassic_Map_Server.Actors
// return;
// todo: this too
if (diffTime.Milliseconds >= deltaTime)
if (diffTime.Milliseconds >= 10)
{
bool foundActor = false;
@ -344,7 +344,7 @@ namespace FFXIVClassic_Map_Server.Actors
}
// time elapsed since last move update
var diffMove = (DateTime.Now - lastMoveUpdate);
var diffMove = (tick - lastMoveUpdate);
// todo: modifier for DelayBeforeRoamToSpawn
// player disappeared

View file

@ -46,6 +46,11 @@ namespace FFXIVClassic_Map_Server.actors.chara.ai
}
public DateTime GetLatestUpdate()
{
return latestUpdate;
}
public void Engage(Character target)
{
if (controller != null)

View file

@ -18,7 +18,7 @@ namespace FFXIVClassic_Map_Server.actors.chara.ai.state
protected DateTime startTime;
protected BasePacket errorPacket;
protected SubPacket errorPacket;
public State(Character owner, Character target)
{

View file

@ -8,13 +8,13 @@ namespace FFXIVClassic_Map_Server.actors.chara.ai.utils
{
static class AttackUtils
{
public static int CalculateDamage(ref Character attacker, ref Character defender)
public static int CalculateDamage(Character attacker, Character defender)
{
int dmg = CalculateBaseDamage(ref attacker, ref defender);
int dmg = CalculateBaseDamage(attacker, defender);
return dmg;
}
public static int CalculateBaseDamage(ref Character attacker, ref Character defender)
public static int CalculateBaseDamage(Character attacker, Character defender)
{
return 0;
}

View file

@ -396,8 +396,9 @@ namespace FFXIVClassic_Map_Server.Actors
player.QueuePacket(PlayBGAnimation.BuildPacket(actorId, player.actorId, animationName));
}
public void Update(double deltaTime)
public void Update(DateTime tick)
{
var deltaTime = (tick - aiContainer.GetLatestUpdate()).Milliseconds;
LuaEngine.GetInstance().CallLuaFunction(null, this, "onUpdate", true, deltaTime);
}