update stuff
This commit is contained in:
parent
a978cd8e06
commit
78d6bfc064
6 changed files with 39 additions and 36 deletions
|
@ -65,9 +65,9 @@ dependencies {
|
|||
quiltMod "org.codeberg.CRModders:cosmic-quilt:${cosmic_quilt_version}"
|
||||
|
||||
//quiltMod "quilt-mod:resource-loader:1.0.2"
|
||||
quiltMod "com.github.CRModders:FluxAPI:0.4.0"
|
||||
quiltMod "com.github.CRModders:FluxAPI:0.5.3"
|
||||
|
||||
quiltMod "com.github.ForwarD-NerN:BlockEntityPrototype:master-SNAPSHOT"
|
||||
quiltMod "com.github.ForwarD-NerN:BlockEntityPrototype:fe52c5a"
|
||||
}
|
||||
|
||||
processResources {
|
||||
|
|
|
@ -4,10 +4,10 @@
|
|||
org.gradle.caching=false
|
||||
|
||||
# Project Info
|
||||
version=1.2.0
|
||||
version=1.3.0
|
||||
group=net.pietru
|
||||
id=omni_power
|
||||
|
||||
# Dependency Versions
|
||||
cosmic_reach_version=0.1.15
|
||||
cosmic_quilt_version=1.1.5
|
||||
cosmic_reach_version=0.1.17
|
||||
cosmic_quilt_version=1.2.4
|
||||
|
|
|
@ -3,7 +3,9 @@ Mod for game Cosmic Reach.\
|
|||
Based on the example mod for the [Cosmic Quilt](https://codeberg.org/CRModders/cosmic-quilt) Loader
|
||||
|
||||
## Mod requires
|
||||
- Flux API (0.4.0+)
|
||||
- Cosmic Reach (0.1.17+)
|
||||
- Cosmic Quilt (1.2.4+)
|
||||
- Flux API (0.5.2+)
|
||||
|
||||
<br>
|
||||
<br>
|
||||
|
|
|
@ -2,7 +2,7 @@ package net.pietru.omni_power;
|
|||
|
||||
import dev.crmodders.flux.tags.Identifier;
|
||||
import dev.crmodders.flux.util.BlockBuilderUtils;
|
||||
import finalforeach.cosmicreach.world.blockevents.BlockEvents;
|
||||
import finalforeach.cosmicreach.blockevents.BlockEvents;
|
||||
import net.pietru.omni_power.blockevents.Power;
|
||||
import org.coolcosmos.cosmicquilt.api.entrypoint.ModInitializer;
|
||||
import org.quiltmc.loader.api.ModContainer;
|
||||
|
|
|
@ -2,15 +2,16 @@ package net.pietru.omni_power.blockevents;
|
|||
|
||||
import com.badlogic.gdx.utils.Array;
|
||||
import com.badlogic.gdx.utils.OrderedMap;
|
||||
import finalforeach.cosmicreach.world.BlockPosition;
|
||||
import finalforeach.cosmicreach.blocks.BlockPosition;
|
||||
import finalforeach.cosmicreach.world.World;
|
||||
import finalforeach.cosmicreach.world.blockevents.BlockEventTrigger;
|
||||
import finalforeach.cosmicreach.world.blockevents.IBlockEventAction;
|
||||
import finalforeach.cosmicreach.world.blocks.BlockState;
|
||||
import finalforeach.cosmicreach.blockevents.BlockEventTrigger;
|
||||
import finalforeach.cosmicreach.blockevents.IBlockEventAction;
|
||||
import finalforeach.cosmicreach.blocks.BlockState;
|
||||
import finalforeach.cosmicreach.world.Zone;
|
||||
import net.pietru.omni_power.OmniPower;
|
||||
import net.pietru.omni_power.api.IPowerClient;
|
||||
import net.pietru.omni_power.api.IPowerProducer;
|
||||
import ru.nern.becraft.bed.BEUtils;
|
||||
import ru.nern.becraft.bed.utils.BEUtils;
|
||||
import ru.nern.becraft.bed.api.BlockEntity;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
@ -29,11 +30,11 @@ public class Power implements IBlockEventAction {
|
|||
}
|
||||
|
||||
@Override
|
||||
public void act(BlockState blockState, BlockEventTrigger blockEventTrigger, World world, Map<String, Object> args) {
|
||||
this.act(blockState, blockEventTrigger, world, (BlockPosition)args.get("blockPos"));
|
||||
public void act(BlockState blockState, BlockEventTrigger blockEventTrigger, Zone zone, Map<String, Object> args) {
|
||||
this.act(blockState, blockEventTrigger, zone, (BlockPosition)args.get("blockPos"));
|
||||
}
|
||||
|
||||
public void act(BlockState srcBlockState, BlockEventTrigger blockEventTrigger, World world, BlockPosition sourcePos) {
|
||||
public void act(BlockState srcBlockState, BlockEventTrigger blockEventTrigger, Zone zone, BlockPosition sourcePos) {
|
||||
OrderedMap<String, Object> p = blockEventTrigger.getParams();
|
||||
String triggerId = (String)p.get("triggerId");
|
||||
String cable_group = (String)p.get("cable_group");
|
||||
|
@ -63,7 +64,7 @@ public class Power implements IBlockEventAction {
|
|||
continue;
|
||||
}
|
||||
if (to_check!=sourcePos || self_run){
|
||||
runTrigger(triggerId,to_check,world);
|
||||
runTrigger(triggerId,to_check,zone);
|
||||
}
|
||||
if (block_entities && source_be){
|
||||
BlockEntity target_entity = BEUtils.getBlockEntity(sourcePos);
|
||||
|
@ -72,12 +73,12 @@ public class Power implements IBlockEventAction {
|
|||
}
|
||||
if (targetBlockState.stringId.contains(cable_group)){
|
||||
power_transmitters.add(to_check);
|
||||
unchecked_blocks.addAll(get_touching_positions(world,to_check,targetBlockState));
|
||||
unchecked_blocks.addAll(get_touching_positions(zone,to_check,targetBlockState));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void runTrigger(String triggerId, BlockPosition triggerPos, World world) {
|
||||
private void runTrigger(String triggerId, BlockPosition triggerPos, Zone zone) {
|
||||
if (triggerPos != null) {
|
||||
BlockState targetBlockState = triggerPos.getBlockState();
|
||||
if (targetBlockState == null) {
|
||||
|
@ -96,44 +97,44 @@ public class Power implements IBlockEventAction {
|
|||
|
||||
for(int var10 = 0; var10 < var9; ++var10) {
|
||||
BlockEventTrigger t = var8[var10];
|
||||
t.act(targetBlockState, world, args);
|
||||
t.act(targetBlockState, zone, args);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public Array<BlockPosition> get_touching_positions(World world,BlockPosition pos,BlockState state){
|
||||
public Array<BlockPosition> get_touching_positions(Zone zone,BlockPosition pos,BlockState state){
|
||||
Array<BlockPosition> arr = new Array<>();
|
||||
BlockPosition side_pos;
|
||||
side_pos = pos.getOffsetBlockPos(world, 1, 0, 0);
|
||||
side_pos = pos.getOffsetBlockPos(zone, 1, 0, 0);
|
||||
if (state.stringId.contains("xp_power") && block_has_dir_or_all(side_pos,"xm_power"))
|
||||
arr.add(side_pos);
|
||||
side_pos = pos.getOffsetBlockPos(world, -1, 0, 0);
|
||||
side_pos = pos.getOffsetBlockPos(zone, -1, 0, 0);
|
||||
if (state.stringId.contains("xm_power") && block_has_dir_or_all(side_pos,"xp_power"))
|
||||
arr.add(side_pos);
|
||||
|
||||
side_pos = pos.getOffsetBlockPos(world, 0, 1, 0);
|
||||
side_pos = pos.getOffsetBlockPos(zone, 0, 1, 0);
|
||||
if (state.stringId.contains("yp_power") && block_has_dir_or_all(side_pos,"ym_power"))
|
||||
arr.add(side_pos);
|
||||
side_pos = pos.getOffsetBlockPos(world, 0, -1, 0);
|
||||
side_pos = pos.getOffsetBlockPos(zone, 0, -1, 0);
|
||||
if (state.stringId.contains("ym_power") && block_has_dir_or_all(side_pos,"yp_power"))
|
||||
arr.add(side_pos);
|
||||
|
||||
side_pos = pos.getOffsetBlockPos(world, 0, 0, 1);
|
||||
side_pos = pos.getOffsetBlockPos(zone, 0, 0, 1);
|
||||
if (state.stringId.contains("zp_power") && block_has_dir_or_all(side_pos,"zm_power"))
|
||||
arr.add(side_pos);
|
||||
side_pos = pos.getOffsetBlockPos(world, 0, 0, -1);
|
||||
side_pos = pos.getOffsetBlockPos(zone, 0, 0, -1);
|
||||
if (state.stringId.contains("zm_power") && block_has_dir_or_all(side_pos,"zp_power"))
|
||||
arr.add(side_pos);
|
||||
|
||||
if (arr.size<=0) {
|
||||
arr.add(pos.getOffsetBlockPos(world, 1, 0, 0));
|
||||
arr.add(pos.getOffsetBlockPos(world, -1, 0, 0));
|
||||
arr.add(pos.getOffsetBlockPos(zone, 1, 0, 0));
|
||||
arr.add(pos.getOffsetBlockPos(zone, -1, 0, 0));
|
||||
|
||||
arr.add(pos.getOffsetBlockPos(world, 0, 1, 0));
|
||||
arr.add(pos.getOffsetBlockPos(world, 0, -1, 0));
|
||||
arr.add(pos.getOffsetBlockPos(zone, 0, 1, 0));
|
||||
arr.add(pos.getOffsetBlockPos(zone, 0, -1, 0));
|
||||
|
||||
arr.add(pos.getOffsetBlockPos(world, 0, 0, 1));
|
||||
arr.add(pos.getOffsetBlockPos(world, 0, 0, -1));
|
||||
arr.add(pos.getOffsetBlockPos(zone, 0, 0, 1));
|
||||
arr.add(pos.getOffsetBlockPos(zone, 0, 0, -1));
|
||||
}
|
||||
return arr;
|
||||
}
|
||||
|
|
|
@ -31,22 +31,22 @@
|
|||
"depends": [
|
||||
{
|
||||
"id": "cosmic_quilt",
|
||||
"versions": "*"
|
||||
"versions": ">=1.2.4"
|
||||
},
|
||||
{
|
||||
"id": "cosmic_reach",
|
||||
"versions": "*"
|
||||
"versions": ">=0.1.17"
|
||||
},
|
||||
{
|
||||
"id": "fluxapi",
|
||||
"versions": ">=0.4.0"
|
||||
"versions": ">=0.5.2"
|
||||
}
|
||||
],
|
||||
|
||||
"suggests": [
|
||||
{
|
||||
"id": "becraft",
|
||||
"versions": ">=1.0.7"
|
||||
"versions": ">=1.2.0"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
|
Loading…
Reference in a new issue