LADXHD/InGame/GameObjects/Things/ObjHoleResetPoint.cs

34 lines
1.2 KiB
C#
Raw Permalink Normal View History

2023-12-14 22:21:22 +00:00
using Microsoft.Xna.Framework;
using ProjectZ.InGame.GameObjects.Base;
using ProjectZ.InGame.GameObjects.Base.CObjects;
using ProjectZ.InGame.GameObjects.Base.Components;
using ProjectZ.InGame.Map;
using ProjectZ.InGame.Things;
namespace ProjectZ.InGame.GameObjects.Things
{
internal class ObjHoleResetPoint : GameObject
{
private readonly int _direction;
public ObjHoleResetPoint(Map.Map map, int posX, int posY, int direction) : base(map)
{
SprEditorImage = Resources.SprWhite;
EditorIconSource = new Rectangle(0, 0, 16, 16);
EditorColor = Color.Yellow * 0.75f;
EntityPosition = new CPosition(posX, posY, 0);
EntitySize = new Rectangle(0, 0, 16, 16);
_direction = direction;
var collisionRectangle = new Rectangle(posX, posY, 16, 16);
AddComponent(ObjectCollisionComponent.Index, new ObjectCollisionComponent(collisionRectangle, OnCollision));
}
private void OnCollision(GameObject gameObject)
{
MapManager.ObjLink.SetHoleResetPosition(EntityPosition.Position, _direction);
}
}
}