11package generations.gg.generations.core.generationscore.common
22
33import com.cobblemon.mod.common.Cobblemon
4+ import com.cobblemon.mod.common.CobblemonEntities
45import com.cobblemon.mod.common.api.Priority
56import com.cobblemon.mod.common.api.battles.model.actor.ActorType
67import com.cobblemon.mod.common.api.events.CobblemonEvents
@@ -14,23 +15,29 @@ import com.cobblemon.mod.common.api.text.text
1415import com.cobblemon.mod.common.battles.actor.PlayerBattleActor
1516import com.cobblemon.mod.common.client.gui.interact.wheel.InteractWheelOption
1617import com.cobblemon.mod.common.client.gui.interact.wheel.Orientation
18+ import com.cobblemon.mod.common.entity.pokemon.PokemonEntity
1719import com.cobblemon.mod.common.platform.events.PlatformEvents
1820import com.cobblemon.mod.common.util.asTranslated
1921import com.cobblemon.mod.common.util.cobblemonResource
2022import com.cobblemon.mod.common.util.giveOrDropItemStack
23+ import dev.architectury.event.EventResult
24+ import dev.architectury.event.events.common.EntityEvent
2125import generations.gg.generations.core.generationscore.common.api.player.Caught
2226import generations.gg.generations.core.generationscore.common.client.render.rarecandy.instanceOrNull
2327import generations.gg.generations.core.generationscore.common.config.LegendKeys
2428import generations.gg.generations.core.generationscore.common.config.SpeciesKey
2529import generations.gg.generations.core.generationscore.common.network.packets.HeadPatPacket
2630import generations.gg.generations.core.generationscore.common.tags.GenerationsItemTags.*
2731import generations.gg.generations.core.generationscore.common.util.DataKeys
32+ import generations.gg.generations.core.generationscore.common.world.entity.GenerationsEntities
33+ import generations.gg.generations.core.generationscore.common.world.entity.ZygardeCellEntity
2834import generations.gg.generations.core.generationscore.common.world.item.FormChanging
2935import generations.gg.generations.core.generationscore.common.world.item.GenerationsItems
3036import generations.gg.generations.core.generationscore.common.world.item.PostBattleUpdatingItem
3137import generations.gg.generations.core.generationscore.common.world.item.PostBattleUpdatingItem.BattleData
3238import generations.gg.generations.core.generationscore.common.world.level.block.GenerationsUtilityBlocks.SCARECROW
3339import generations.gg.generations.core.generationscore.common.world.level.block.shrines.RegiShrineBlock
40+ import generations.gg.generations.core.generationscore.common.world.level.block.utilityblocks.ScarecrowBlock
3441import net.minecraft.client.Minecraft
3542import net.minecraft.core.registries.BuiltInRegistries
3643import net.minecraft.resources.ResourceLocation
@@ -58,7 +65,24 @@ class GenerationsCobblemonEvents {
5865//
5966// }
6067
61- GenerationsArchitecturyEvents
68+ CobblemonEvents .ENTITY_SPAWN .subscribe { it ->
69+ val entity = it.entity
70+
71+ if (entity is PokemonEntity || entity is ZygardeCellEntity ) {
72+
73+ val list = RegiShrineBlock .searchForBlock(
74+ entity.level(),
75+ entity.blockPosition(),
76+ 32 , // GenerationsCore.CONFIG.blocks.scarecrowRadius.x,
77+ 32 , // GenerationsCore.CONFIG.blocks.scarecrowRadius.y,
78+ 32 , // GenerationsCore.CONFIG.blocks.scarecrowRadius.z,
79+ 1
80+ ) { world, pos -> world.getBlockState(pos).block is ScarecrowBlock }
81+ if (list.isNotEmpty()) {
82+ it.cancel()
83+ }
84+ }
85+ }
6286
6387 BATTLE_VICTORY .subscribe(Priority .HIGH ) { event ->
6488 val data = mutableListOf<BattleData >()
0 commit comments