mirror of
https://github.com/collinsmith/riiablo.git
synced 2025-07-08 23:07:46 +07:00
Added ServerItemManager which will handle item wrapper entity creation/deletion
This commit is contained in:
@ -2,7 +2,6 @@ package com.riiablo.engine.server;
|
|||||||
|
|
||||||
import com.artemis.ComponentMapper;
|
import com.artemis.ComponentMapper;
|
||||||
import com.artemis.annotations.Wire;
|
import com.artemis.annotations.Wire;
|
||||||
import com.badlogic.gdx.math.Vector2;
|
|
||||||
import com.riiablo.engine.EntityFactory;
|
import com.riiablo.engine.EntityFactory;
|
||||||
import com.riiablo.engine.server.component.Item;
|
import com.riiablo.engine.server.component.Item;
|
||||||
import com.riiablo.engine.server.component.Player;
|
import com.riiablo.engine.server.component.Player;
|
||||||
@ -26,17 +25,11 @@ public class ItemManager extends PassiveSystem {
|
|||||||
public void groundToCursor(int entityId, int dst) {
|
public void groundToCursor(int entityId, int dst) {
|
||||||
com.riiablo.item.Item item = mItem.get(dst).item;
|
com.riiablo.item.Item item = mItem.get(dst).item;
|
||||||
mPlayer.get(entityId).data.groundToCursor(item);
|
mPlayer.get(entityId).data.groundToCursor(item);
|
||||||
|
|
||||||
world.delete(dst);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void cursorToGround(int entityId) {
|
public void cursorToGround(int entityId) {
|
||||||
CharData charData = mPlayer.get(entityId).data;
|
CharData charData = mPlayer.get(entityId).data;
|
||||||
com.riiablo.item.Item item = charData.getItems().getCursor();
|
|
||||||
charData.cursorToGround();
|
charData.cursorToGround();
|
||||||
|
|
||||||
Vector2 position = mPosition.get(entityId).position;
|
|
||||||
factory.createItem(item, position);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void storeToCursor(int entityId, int i) {
|
public void storeToCursor(int entityId, int i) {
|
||||||
|
24
core/src/com/riiablo/engine/server/ServerItemManager.java
Normal file
24
core/src/com/riiablo/engine/server/ServerItemManager.java
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
package com.riiablo.engine.server;
|
||||||
|
|
||||||
|
import com.badlogic.gdx.math.Vector2;
|
||||||
|
import com.riiablo.save.CharData;
|
||||||
|
|
||||||
|
public class ServerItemManager extends ItemManager {
|
||||||
|
private static final String TAG = "ServerItemManager";
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void groundToCursor(int entityId, int dst) {
|
||||||
|
super.groundToCursor(entityId, dst);
|
||||||
|
world.delete(dst);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void cursorToGround(int entityId) {
|
||||||
|
CharData charData = mPlayer.get(entityId).data;
|
||||||
|
com.riiablo.item.Item item = charData.getItems().getCursor();
|
||||||
|
super.cursorToGround(entityId);
|
||||||
|
|
||||||
|
Vector2 position = mPosition.get(entityId).position;
|
||||||
|
factory.createItem(item, position);
|
||||||
|
}
|
||||||
|
}
|
@ -41,6 +41,7 @@ import com.riiablo.engine.server.ObjectInteractor;
|
|||||||
import com.riiablo.engine.server.Pathfinder;
|
import com.riiablo.engine.server.Pathfinder;
|
||||||
import com.riiablo.engine.server.SerializationManager;
|
import com.riiablo.engine.server.SerializationManager;
|
||||||
import com.riiablo.engine.server.ServerEntityFactory;
|
import com.riiablo.engine.server.ServerEntityFactory;
|
||||||
|
import com.riiablo.engine.server.ServerItemManager;
|
||||||
import com.riiablo.engine.server.ServerNetworkIdManager;
|
import com.riiablo.engine.server.ServerNetworkIdManager;
|
||||||
import com.riiablo.engine.server.VelocityAdder;
|
import com.riiablo.engine.server.VelocityAdder;
|
||||||
import com.riiablo.engine.server.WarpInteractor;
|
import com.riiablo.engine.server.WarpInteractor;
|
||||||
@ -250,7 +251,7 @@ public class D2GS extends ApplicationAdapter {
|
|||||||
map.finishLoading();
|
map.finishLoading();
|
||||||
|
|
||||||
factory = new ServerEntityFactory();
|
factory = new ServerEntityFactory();
|
||||||
itemManager = new ItemManager();
|
itemManager = new ServerItemManager();
|
||||||
mapManager = new MapManager();
|
mapManager = new MapManager();
|
||||||
sync = new NetworkSynchronizer();
|
sync = new NetworkSynchronizer();
|
||||||
WorldConfigurationBuilder builder = new WorldConfigurationBuilder()
|
WorldConfigurationBuilder builder = new WorldConfigurationBuilder()
|
||||||
|
Reference in New Issue
Block a user