Add AbstractGameRule.cs & derived classes

This commit is contained in:
miku-666
2025-11-09 22:45:29 +01:00
parent 56e381af24
commit dc69ddc433
9 changed files with 251 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Numerics;
using System.Text;
using System.Threading.Tasks;
using OMI.Formats.GameRule;
namespace PckStudio.Core.GameRule
{
internal sealed class WorldPosition(int x, int y, int z) : AbstractGameRule
{
private Vector3 _pos = new Vector3(x, y, z);
protected override GameRuleFile.GameRule GetGameRule()
{
var gameRule = new GameRuleFile.GameRule("WorldPosition");
gameRule.AddParameters(
new GameRuleFile.IntParameter("x", (int)_pos.X),
new GameRuleFile.IntParameter("y", (int)_pos.Y),
new GameRuleFile.IntParameter("z", (int)_pos.Z)
);
return gameRule;
}
}
}