diff --git a/src/main/java/cactusServer/entities/Entity3D.java b/src/main/java/cactusServer/entities/Entity3D.java index 527a279..59caad6 100644 --- a/src/main/java/cactusServer/entities/Entity3D.java +++ b/src/main/java/cactusServer/entities/Entity3D.java @@ -1,6 +1,7 @@ package cactusServer.entities; import framework.model3D.Placeable; +import net.arnx.jsonic.JSONHint; public abstract class Entity3D extends Entity { private Placeable placeable; @@ -13,6 +14,7 @@ setPlaceable(placeable); } + @JSONHint(ignore = true) public Placeable getPlaceable() { return placeable; } diff --git a/src/main/java/cactusServer/entities/Instance.java b/src/main/java/cactusServer/entities/Instance.java index 8c5068b..12d0099 100644 --- a/src/main/java/cactusServer/entities/Instance.java +++ b/src/main/java/cactusServer/entities/Instance.java @@ -12,11 +12,15 @@ import cactusServer.entities.Object.Attribute; import cactusServer.utils.RandomStringGenerator; import cactusServer.entities.Character; +import framework.model3D.ModelFactory; +import framework.model3D.Object3D; import framework.model3D.Position3D; import framework.model3D.Universe; import framework.physics.AngularVelocity3D; +import framework.physics.Ground; import framework.physics.Velocity3D; import net.arnx.jsonic.JSONHint; +import template.shooting.Stage; /** * �C���X�^���X @@ -27,8 +31,9 @@ public class Instance extends Entity { private String name; private State state; - private String stage; + private String stageURI; private Universe universe; + private Stage stage; private HashMap areaMap = new HashMap<>(); private HashMap objMap = new HashMap<>(); private HashMap characterMap = new HashMap<>(); @@ -45,11 +50,23 @@ * @param name * �C���X�^���X�� */ - public Instance(String name, State state, String stageModel) { + public Instance(String name, State state, String stageURI) { setName(name); setState(state); - setStage(stageModel); + setStage(stageURI); + initUniverse(); + } + + private void initUniverse() { universe = new Universe(); + + // stageURI�����ɂ��ēǂݍ��ރX�e�[�W�̃t�@�C����(���΃p�X)�����\�� + String stageFileName = ""; + + // �X�e�[�W��3D�f�[�^��ǂݍ��ݔz�u���� + Object3D stageObj = ModelFactory.loadModel(stageFileName, false, true).createObject(); + stage = new Stage(stageObj, "jimen1"); + universe.place(stage); } public String getName() { @@ -61,7 +78,12 @@ } public String getStage() { - return stage; + return stageURI; + } + + @JSONHint(ignore = true) + public Universe getUniverse() { + return universe; } @JSONHint(ignore = true) @@ -102,8 +124,8 @@ this.state = state; } - public void setStage(String stage) { - this.stage = stage; + public void setStage(String stageURI) { + this.stageURI = stageURI; } public IDAddressedEntity createArea(String name, Plain[] region, HashSet permissions) {