public static function fromArrayGuesser($key, $value)
{
if (is_int($value)) {
return new IntTag($key, $value);
} elseif (is_float($value)) {
return new FloatTag($key, $value);
} elseif (is_string($value)) {
return new StringTag($key, $value);
} elseif (is_bool($value)) {
return new ByteTag($key, $value ? 1 : 0);
}
return null;
}
/** * Return the defined game rules as NBT. */ public function writeToNBT() { $compoundarray = []; foreach ($this->theGameRules as $key => $value) { $compoundarray[] = NBT::fromArrayGuesser($key, $value); } $nbttagcompound = new CompoundTag("GameRules", $compoundarray); return $nbttagcompound; }