public bool Tick(LevelObjectInfo @object, SonicLevel level, Sonic.Sonic sonic) { if (@object.lastDrawTick != SonicManager.Instance.tickCount - 1) Init(@object, level, sonic); @object.lastDrawTick = SonicManager.Instance.tickCount; evalMe("tickScript").Me().apply(@object, new object[] {@object, level, sonic}); if (@object.State.Truthy()) { @object.Xsp = @object.State.Xsp; @object.Ysp = @object.State.Ysp; } @object.X += @object.Xsp; @object.Y += @object.Ysp; return true; }
public bool Tick(LevelObjectInfo @object, SonicLevel level, Sonic.Sonic sonic) { if (Dead || ObjectData.Falsey()) return false; try { return ObjectData.Tick(@object, level, sonic); } catch (Exception EJ) { Log(EJ.Message, 0); return false; } }
public bool OnHurtSonic(LevelObjectInfo @object, SonicLevel level, Sonic.Sonic sonic, string sensor, dynamic piece) { return Script.Reinterpret<bool>(evalMe("hurtScript").Me().apply(@object, new object[] {@object, level, sonic, sensor, piece})); }
public void Init(LevelObjectInfo @object, SonicLevel level, Sonic.Sonic sonic) { @object.Reset(); evalMe("initScript").Me().apply(@object, new object[] {@object, level, sonic}); }