Interface PokemonProxy<T extends Pokemon>

Type Parameters:
T - The class extending the default Pokemon class
All Known Implementing Classes:
PixelmonPokemonProxy

public interface PokemonProxy<T extends Pokemon>
The proxy used for creating a Pokemon Implement this factory and override the default methods if you wish to provide a custom Pokemon implementation To get the current usage use PokemonFactory
  • Method Summary

    Modifier and Type
    Method
    Description
    default T
    copy(Pokemon pokemon)
    Creates a deep copy of the given Pokémon
    default T
    Creates a new implementation of the Pokémon using the given spec
    default T
    create(Species species)
    Creates an implementation of the Pokémon from the given species
    create(UUID pokemonUUID)
    Creates a new PokemonProxy implementation with the given UUID
    default T
    create(net.minecraft.nbt.CompoundTag nbt)
    Creates a new Pokémon from the given NBT compound
  • Method Details

    • create

      T create(UUID pokemonUUID)
      Creates a new PokemonProxy implementation with the given UUID
      Parameters:
      pokemonUUID - The uuid of the new Pokémon
      Returns:
      The new Pokémon
    • create

      default T create(Species species)
      Creates an implementation of the Pokémon from the given species
      Parameters:
      species - The species of the Pokémon
      Returns:
      The new Pokémon
    • create

      default T create(PokemonSpecification spec)
      Creates a new implementation of the Pokémon using the given spec
      Parameters:
      spec - The spec of the given Pokémon
      Returns:
      The new Pokémon impl from the spec
    • create

      default T create(net.minecraft.nbt.CompoundTag nbt)
      Creates a new Pokémon from the given NBT compound
      Parameters:
      nbt - The nbt provided
      Returns:
      The new Pokémon
    • copy

      default T copy(Pokemon pokemon)
      Creates a deep copy of the given Pokémon
      Parameters:
      pokemon - The Pokémon to copy
      Returns:
      The copy