예제 #1
0
 private void RespawnTimerTick(object sender, ElapsedEventArgs e)
 {
     foreach (var kvp in RespawnDict.ToArray())
     {
         long     elapsedTicks = DateTime.Now.Ticks - kvp.Value.Ticks;
         TimeSpan elapsedSpan  = new TimeSpan(elapsedTicks);
         if (elapsedSpan.TotalMilliseconds >= kvp.Key.Location.RespawnDelay)
         {
             kvp.Key.Spawn(true);
             DeRegisterRespawn(kvp.Key);
         }
     }
 }
예제 #2
0
 private void DeRegisterRespawn(L2Spawn spawn)
 {
     RespawnDict.Remove(spawn);
 }
예제 #3
0
 public void RegisterRespawn(L2Spawn spawn)
 {
     RespawnDict.Add(spawn, DateTime.Now);
 }