def createMobSpawnerWithOptions(x, y, z, options):
    spawner = TileEntity.Create("MobSpawner")
    TileEntity.setpos(spawner, (x, y, z))
    spawner["Delay"] = TAG_Short(0)
    spawner["MaxSpawnDelay"] = TAG_Short(options["Max Spawn Delay"])
    spawner["MinSpawnDelay"] = TAG_Short(options["Min Spawn Delay"])
    spawner["SpawnCount"] = TAG_Short(options["Spawn Count"])
    spawner["SpawnRange"] = TAG_Short(options["Spawn Radius"])
    spawner["MaxNearbyEntities"] = TAG_Short(options["Entity Cap"])
    spawner["RequiredPlayerRange"] = TAG_Short(options["Detection Range"])
    return spawner