Skip to content

Commit a92eeac

Browse files
committed
Attempt at fixing scarecrow issues.
1 parent b804d4b commit a92eeac

File tree

2 files changed

+25
-20
lines changed

2 files changed

+25
-20
lines changed

common/src/main/java/generations/gg/generations/core/generationscore/common/GenerationsArchitecturyEvents.kt

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -37,25 +37,6 @@ object GenerationsArchitecturyEvents {
3737
.let { it as? ElevatorBlock }?.takeElevator(it.level(), it.blockPosition().below(), it, Direction.UP)
3838
}
3939

40-
EntityEvent.ADD.register { entity, level ->
41-
if(entity.type == CobblemonEntities.POKEMON || entity.type == GenerationsEntities.ZYGARDE_CELL) {
42-
43-
val list = RegiShrineBlock.searchForBlock(
44-
level,
45-
entity.blockPosition(),
46-
GenerationsCore.CONFIG.blocks.scarecrowRadius.x,
47-
GenerationsCore.CONFIG.blocks.scarecrowRadius.y,
48-
GenerationsCore.CONFIG.blocks.scarecrowRadius.z,
49-
1
50-
) { world, pos -> world.getBlockState(pos).`is`(SCARECROW.get()) }
51-
if (list.isNotEmpty()) {
52-
EventResult.interruptTrue()
53-
}
54-
}
55-
56-
EventResult.pass()
57-
}
58-
5940
InteractionEvent.RIGHT_CLICK_BLOCK.register { player, hand, pos, _ ->
6041

6142
if (player is ServerPlayer) {

common/src/main/java/generations/gg/generations/core/generationscore/common/GenerationsCobblemonEvents.kt

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package generations.gg.generations.core.generationscore.common
22

33
import com.cobblemon.mod.common.Cobblemon
4+
import com.cobblemon.mod.common.CobblemonEntities
45
import com.cobblemon.mod.common.api.Priority
56
import com.cobblemon.mod.common.api.battles.model.actor.ActorType
67
import com.cobblemon.mod.common.api.events.CobblemonEvents
@@ -14,23 +15,29 @@ import com.cobblemon.mod.common.api.text.text
1415
import com.cobblemon.mod.common.battles.actor.PlayerBattleActor
1516
import com.cobblemon.mod.common.client.gui.interact.wheel.InteractWheelOption
1617
import com.cobblemon.mod.common.client.gui.interact.wheel.Orientation
18+
import com.cobblemon.mod.common.entity.pokemon.PokemonEntity
1719
import com.cobblemon.mod.common.platform.events.PlatformEvents
1820
import com.cobblemon.mod.common.util.asTranslated
1921
import com.cobblemon.mod.common.util.cobblemonResource
2022
import com.cobblemon.mod.common.util.giveOrDropItemStack
23+
import dev.architectury.event.EventResult
24+
import dev.architectury.event.events.common.EntityEvent
2125
import generations.gg.generations.core.generationscore.common.api.player.Caught
2226
import generations.gg.generations.core.generationscore.common.client.render.rarecandy.instanceOrNull
2327
import generations.gg.generations.core.generationscore.common.config.LegendKeys
2428
import generations.gg.generations.core.generationscore.common.config.SpeciesKey
2529
import generations.gg.generations.core.generationscore.common.network.packets.HeadPatPacket
2630
import generations.gg.generations.core.generationscore.common.tags.GenerationsItemTags.*
2731
import 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
2834
import generations.gg.generations.core.generationscore.common.world.item.FormChanging
2935
import generations.gg.generations.core.generationscore.common.world.item.GenerationsItems
3036
import generations.gg.generations.core.generationscore.common.world.item.PostBattleUpdatingItem
3137
import generations.gg.generations.core.generationscore.common.world.item.PostBattleUpdatingItem.BattleData
3238
import generations.gg.generations.core.generationscore.common.world.level.block.GenerationsUtilityBlocks.SCARECROW
3339
import generations.gg.generations.core.generationscore.common.world.level.block.shrines.RegiShrineBlock
40+
import generations.gg.generations.core.generationscore.common.world.level.block.utilityblocks.ScarecrowBlock
3441
import net.minecraft.client.Minecraft
3542
import net.minecraft.core.registries.BuiltInRegistries
3643
import 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

Comments
 (0)