mirror of
https://github.com/DRE2N/DungeonsXL.git
synced 2025-02-08 08:21:53 +01:00
Completed the savePlayer function
Added timeUntilKickOfflinePlayer Added some messages
This commit is contained in:
parent
5571bc5c26
commit
a3c56f9d6d
@ -28,6 +28,8 @@ public class DConfig {
|
||||
public int timeToNextPlay = 0;
|
||||
public int timeToNextLoot = 0;
|
||||
|
||||
public int timeUntilKickOfflinePlayer = -1;
|
||||
|
||||
//Spout
|
||||
public boolean spoutCraftOnly = false;
|
||||
public String spoutTexturepackURL;
|
||||
@ -53,7 +55,7 @@ public class DConfig {
|
||||
Set<String> list = configSetionClasses.getKeys(false);
|
||||
for (String className:list) {
|
||||
String name = className;
|
||||
boolean hasDog = configSetionClasses.getBoolean(className+".hasdog");
|
||||
boolean hasDog = configSetionClasses.getBoolean(className+".dog");
|
||||
|
||||
/* Items */
|
||||
List<String> items = configSetionClasses.getStringList(className+".items");
|
||||
@ -131,25 +133,29 @@ public class DConfig {
|
||||
}
|
||||
|
||||
/* Invited Players */
|
||||
if(configFile.contains("invitedplayers")){
|
||||
List<String> invitedplayers = configFile.getStringList("invitedplayers");
|
||||
if(configFile.contains("invitedPlayers")){
|
||||
List<String> invitedplayers = configFile.getStringList("invitedPlayers");
|
||||
for(String i:invitedplayers){
|
||||
this.invitedPlayers.add(i);
|
||||
}
|
||||
}
|
||||
|
||||
/* Lobby */
|
||||
if(configFile.contains("islobbydisabled")){
|
||||
isLobbyDisabled = configFile.getBoolean("islobbydisabled");
|
||||
if(configFile.contains("isLobbyDisabled")){
|
||||
isLobbyDisabled = configFile.getBoolean("isLobbyDisabled");
|
||||
}
|
||||
|
||||
/* Times */
|
||||
if(configFile.contains("timetonextplay")){
|
||||
timeToNextPlay = configFile.getInt("timetonextplay");
|
||||
if(configFile.contains("timeToNextPlay")){
|
||||
timeToNextPlay = configFile.getInt("timeToNextPlay");
|
||||
}
|
||||
|
||||
if(configFile.contains("timetonextloot")){
|
||||
timeToNextLoot = configFile.getInt("timetonextloot");
|
||||
if(configFile.contains("timeToNextLoot")){
|
||||
timeToNextLoot = configFile.getInt("timeToNextLoot");
|
||||
}
|
||||
|
||||
if(configFile.contains("timeUntilKickOfflinePlayer")){
|
||||
timeUntilKickOfflinePlayer = configFile.getInt("timeUntilKickOfflinePlayer");
|
||||
}
|
||||
|
||||
/* Spout */
|
||||
|
@ -66,14 +66,14 @@ public class DGSign {
|
||||
if(dgroup!=null){
|
||||
if(dgroup.isPlaying){
|
||||
sign.setLine(0, strIsPlaying);
|
||||
}else if(dgroup.players.size()>=this.maxPlayersPerGroup){
|
||||
}else if(dgroup.getPlayers().size()>=this.maxPlayersPerGroup){
|
||||
sign.setLine(0, strFull);
|
||||
}else{
|
||||
sign.setLine(0, strJoinGrp);
|
||||
}
|
||||
int j=1;
|
||||
Sign rowSign=sign;
|
||||
for(Player player:dgroup.players){
|
||||
for(Player player:dgroup.getPlayers()){
|
||||
if(j>3){
|
||||
j=0;
|
||||
rowSign=(Sign) sign.getBlock().getRelative(0, -1, 0).getState();
|
||||
@ -233,11 +233,9 @@ public class DGSign {
|
||||
dgsign.update();
|
||||
}
|
||||
}else if(topSign.getLine(0).equals(strJoinGrp)){
|
||||
if(DGroup.get(player)==null){
|
||||
if(!dgsign.dgroups[column].players.contains(player)){
|
||||
dgsign.dgroups[column].players.add(player);
|
||||
dgsign.update();
|
||||
}
|
||||
if(DGroup.get(player) == null){
|
||||
dgsign.dgroups[column].addPlayer(player);
|
||||
dgsign.update();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -8,28 +8,46 @@ import com.dre.dungeonsxl.game.GameWorld;
|
||||
public class DGroup {
|
||||
public static CopyOnWriteArrayList<DGroup> dgroups=new CopyOnWriteArrayList<DGroup>();
|
||||
|
||||
//Variables
|
||||
public CopyOnWriteArrayList<Player> players=new CopyOnWriteArrayList<Player>();
|
||||
public String dungeonname;
|
||||
public GameWorld gworld;
|
||||
private CopyOnWriteArrayList<Player> players=new CopyOnWriteArrayList<Player>();
|
||||
private String dungeonname;
|
||||
private GameWorld gworld;
|
||||
public boolean isPlaying;
|
||||
|
||||
|
||||
public DGroup(Player player, String dungeonname){
|
||||
dgroups.add(this);
|
||||
|
||||
this.players.add(player);
|
||||
this.getPlayers().add(player);
|
||||
this.isPlaying=false;
|
||||
this.dungeonname=dungeonname;
|
||||
this.setDungeonname(dungeonname);
|
||||
}
|
||||
|
||||
public void addPlayer(Player player){
|
||||
//Send message
|
||||
for(Player groupPlayer : this.getPlayers()){
|
||||
P.p.msg(groupPlayer,P.p.language.get("Player_JoinGroup", player.getName()));
|
||||
}
|
||||
|
||||
//Add player
|
||||
this.getPlayers().add(player);
|
||||
}
|
||||
|
||||
public void removePlayer(Player player) {
|
||||
this.players.remove(player);
|
||||
this.getPlayers().remove(player);
|
||||
DGSign.updatePerGroup(this);
|
||||
|
||||
//Send message
|
||||
for(Player groupPlayer : this.getPlayers()){
|
||||
P.p.msg(groupPlayer,P.p.language.get("Player_LeftGroup", player.getName()));
|
||||
}
|
||||
|
||||
//Check group
|
||||
if(this.isEmpty()){
|
||||
this.remove();
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isEmpty() {
|
||||
return this.players.isEmpty();
|
||||
return this.getPlayers().isEmpty();
|
||||
}
|
||||
|
||||
public void remove() {
|
||||
@ -39,8 +57,8 @@ public class DGroup {
|
||||
|
||||
public void startGame(){
|
||||
this.isPlaying=true;
|
||||
gworld.startGame();
|
||||
for(Player player:players){
|
||||
getGworld().startGame();
|
||||
for(Player player:getPlayers()){
|
||||
DPlayer dplayer=DPlayer.get(player);
|
||||
dplayer.respawn();
|
||||
}
|
||||
@ -51,7 +69,7 @@ public class DGroup {
|
||||
//Statics
|
||||
public static DGroup get(Player player){
|
||||
for(DGroup dgroup:dgroups){
|
||||
if(dgroup.players.contains(player)){
|
||||
if(dgroup.getPlayers().contains(player)){
|
||||
return dgroup;
|
||||
}
|
||||
}
|
||||
@ -60,7 +78,7 @@ public class DGroup {
|
||||
|
||||
public static DGroup get(GameWorld gworld){
|
||||
for(DGroup dgroup:dgroups){
|
||||
if(dgroup.gworld==gworld){
|
||||
if(dgroup.getGworld()==gworld){
|
||||
return dgroup;
|
||||
}
|
||||
}
|
||||
@ -69,10 +87,36 @@ public class DGroup {
|
||||
|
||||
public static void leaveGroup(Player player){
|
||||
for(DGroup dgroup:dgroups){
|
||||
if(dgroup.players.contains(player)){
|
||||
dgroup.players.remove(player);
|
||||
if(dgroup.getPlayers().contains(player)){
|
||||
dgroup.getPlayers().remove(player);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Getters and setters
|
||||
|
||||
public CopyOnWriteArrayList<Player> getPlayers() {
|
||||
return players;
|
||||
}
|
||||
|
||||
public void setPlayers(CopyOnWriteArrayList<Player> players) {
|
||||
this.players = players;
|
||||
}
|
||||
|
||||
public GameWorld getGworld() {
|
||||
return gworld;
|
||||
}
|
||||
|
||||
public void setGworld(GameWorld gworld) {
|
||||
this.gworld = gworld;
|
||||
}
|
||||
|
||||
public String getDungeonname() {
|
||||
return dungeonname;
|
||||
}
|
||||
|
||||
public void setDungeonname(String dungeonname) {
|
||||
this.dungeonname = dungeonname;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -44,7 +44,7 @@ public class DPlayer {
|
||||
public GameCheckpoint checkpoint;
|
||||
public Wolf wolf;
|
||||
public int wolfRespawnTime=30;
|
||||
public int offlineTime;
|
||||
public long offlineTime;
|
||||
public CopyOnWriteArrayList<ItemStack> respawnInventory=new CopyOnWriteArrayList<ItemStack>();
|
||||
|
||||
public Inventory treasureInv = P.p.getServer().createInventory(player, 45, "Belohnungen");
|
||||
@ -101,10 +101,6 @@ public class DPlayer {
|
||||
}
|
||||
}
|
||||
|
||||
public void goOffline(){
|
||||
offlineTime=1;
|
||||
}
|
||||
|
||||
public void leave(){
|
||||
remove(this);
|
||||
|
||||
@ -120,9 +116,6 @@ public class DPlayer {
|
||||
DGroup dgroup=DGroup.get(this.player);
|
||||
if(dgroup!=null){
|
||||
dgroup.removePlayer(this.player);
|
||||
if(dgroup.isEmpty()){
|
||||
dgroup.remove();
|
||||
}
|
||||
}
|
||||
|
||||
//Belohnung
|
||||
@ -167,7 +160,7 @@ public class DPlayer {
|
||||
int i=0;
|
||||
Player groupplayer;
|
||||
do{
|
||||
groupplayer=dgroup.players.get(i);
|
||||
groupplayer=dgroup.getPlayers().get(i);
|
||||
if(groupplayer!=null){
|
||||
for(ItemStack istack:this.player.getInventory()){
|
||||
if(istack!=null){
|
||||
@ -199,7 +192,7 @@ public class DPlayer {
|
||||
DGroup dgroup=DGroup.get(this.player);
|
||||
if(!dgroup.isPlaying){
|
||||
if(dgroup!=null){
|
||||
for(Player player:dgroup.players){
|
||||
for(Player player:dgroup.getPlayers()){
|
||||
DPlayer dplayer=get(player);
|
||||
if(!dplayer.isReady){
|
||||
return;
|
||||
@ -217,7 +210,7 @@ public class DPlayer {
|
||||
public void respawn(){
|
||||
DGroup dgroup=DGroup.get(this.player);
|
||||
if(this.checkpoint==null){
|
||||
this.player.teleport(dgroup.gworld.locStart);
|
||||
this.player.teleport(dgroup.getGworld().locStart);
|
||||
}else{
|
||||
this.player.teleport(this.checkpoint.location);
|
||||
}
|
||||
@ -242,7 +235,7 @@ public class DPlayer {
|
||||
DGroup dgroup=DGroup.get(this.player);
|
||||
if(dgroup!=null){
|
||||
if(dgroup.isPlaying){
|
||||
for(Player player:dgroup.players){
|
||||
for(Player player:dgroup.getPlayers()){
|
||||
DPlayer dplayer=get(player);
|
||||
if(!dplayer.isFinished){
|
||||
p.msg(this.player, p.language.get("Player_WaitForOtherPlayers"));
|
||||
@ -250,7 +243,7 @@ public class DPlayer {
|
||||
}
|
||||
}
|
||||
|
||||
for(Player player:dgroup.players){
|
||||
for(Player player:dgroup.getPlayers()){
|
||||
DPlayer dplayer=get(player);
|
||||
dplayer.leave();
|
||||
}
|
||||
@ -431,9 +424,9 @@ public class DPlayer {
|
||||
|
||||
DGroup dgroup=DGroup.get(dplayer.player);
|
||||
if(dplayer.checkpoint==null){
|
||||
dplayer.player.teleport(dgroup.gworld.locStart);
|
||||
dplayer.player.teleport(dgroup.getGworld().locStart);
|
||||
if(dplayer.wolf!=null){
|
||||
dplayer.wolf.teleport(dgroup.gworld.locStart);
|
||||
dplayer.wolf.teleport(dgroup.getGworld().locStart);
|
||||
}
|
||||
}else{
|
||||
dplayer.player.teleport(dplayer.checkpoint.location);
|
||||
@ -467,6 +460,13 @@ public class DPlayer {
|
||||
dplayer.wolfRespawnTime--;
|
||||
}
|
||||
}
|
||||
|
||||
//Kick offline players
|
||||
if(dplayer.offlineTime > 0){
|
||||
if(dplayer.offlineTime < System.currentTimeMillis()){
|
||||
dplayer.leave();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -101,15 +101,15 @@ public class DPortal {
|
||||
else if(this.type.equals("todungeon")){
|
||||
DGroup dgroup=DGroup.get(player);
|
||||
if(dgroup!=null){
|
||||
if(dgroup.gworld==null){
|
||||
dgroup.gworld=GameWorld.load(DGroup.get(player).dungeonname);
|
||||
if(dgroup.getGworld()==null){
|
||||
dgroup.setGworld(GameWorld.load(DGroup.get(player).getDungeonname()));
|
||||
}
|
||||
if(dgroup.gworld!=null){
|
||||
if(dgroup.getGworld()!=null){
|
||||
|
||||
/* Check Spout */
|
||||
boolean spoutCheck = true;
|
||||
if(P.p.isSpoutEnabled){
|
||||
if(dgroup.gworld.config.spoutCraftOnly){
|
||||
if(dgroup.getGworld().config.spoutCraftOnly){
|
||||
if(!Spout.getServer().getPlayer(player.getName()).isSpoutCraftEnabled()){
|
||||
spoutCheck = false;
|
||||
}
|
||||
@ -118,16 +118,16 @@ public class DPortal {
|
||||
|
||||
/* Teleport Player */
|
||||
if(spoutCheck){
|
||||
if(dgroup.gworld.locLobby==null){
|
||||
new DPlayer(player,dgroup.gworld.world,dgroup.gworld.world.getSpawnLocation(), false);
|
||||
if(dgroup.getGworld().locLobby==null){
|
||||
new DPlayer(player,dgroup.getGworld().world,dgroup.getGworld().world.getSpawnLocation(), false);
|
||||
}else{
|
||||
new DPlayer(player,dgroup.gworld.world,dgroup.gworld.locLobby, false);
|
||||
new DPlayer(player,dgroup.getGworld().world,dgroup.getGworld().locLobby, false);
|
||||
}
|
||||
}else{
|
||||
p.msg(player,p.language.get("Error_SpoutCraftOnly"));
|
||||
}
|
||||
}else{
|
||||
p.msg(player,p.language.get("Error_DungeonNotExist",DGroup.get(player).dungeonname));
|
||||
p.msg(player,p.language.get("Error_DungeonNotExist",DGroup.get(player).getDungeonname()));
|
||||
}
|
||||
}else{
|
||||
p.msg(player,p.language.get("Error_NotInGroup"));
|
||||
|
@ -51,7 +51,11 @@ public class LanguageReader {
|
||||
defaults.put("Player_FinishedDungeon","&6Du hast den Dungeon erfolgreich beendet!");
|
||||
defaults.put("Player_WaitForOtherPlayers","&6Noch auf Mitspieler warten...");
|
||||
defaults.put("Player_LeaveGroup","&6Du hast deine Gruppe erfolgreich verlassen!");
|
||||
|
||||
defaults.put("Player_Offline","&6Spieler &4&v1&6 ging Offline. Er wird in &4&v2&6 Sekunden automatisch aus der Instanz geworfen!");
|
||||
defaults.put("Player_OfflineNever","&6Spieler &4&v1&6 ging Offline. Er wird &4nicht&6 automatisch aus der Instanz geworfen!");
|
||||
defaults.put("Player_LeftGroup","&6Spieler &4&v1&6 hat die Gruppe verlassen!");
|
||||
defaults.put("Player_JoinGroup","&6Spieler &4&v1&6 hat die Gruppe betreten!");
|
||||
|
||||
/* Cmds */
|
||||
defaults.put("Cmd_Chat_DungeonChat","&6Du bist nun im Dungeon-Chat");
|
||||
defaults.put("Cmd_Chat_NormalChat","&6Du bist nun im öffentlichen Chat");
|
||||
|
@ -28,16 +28,16 @@ public class CMDTest extends DCommand {
|
||||
if(EditWorld.exist(dungeonname)){
|
||||
DGroup dgroup=new DGroup(player, dungeonname);
|
||||
if(dgroup!=null){
|
||||
if(dgroup.gworld==null){
|
||||
dgroup.gworld=GameWorld.load(DGroup.get(player).dungeonname);
|
||||
if(dgroup.getGworld()==null){
|
||||
dgroup.setGworld(GameWorld.load(DGroup.get(player).getDungeonname()));
|
||||
}
|
||||
|
||||
DPlayer newDPlayer;
|
||||
|
||||
if(dgroup.gworld.locLobby==null){
|
||||
newDPlayer=new DPlayer(player,dgroup.gworld.world,dgroup.gworld.world.getSpawnLocation(), false);
|
||||
if(dgroup.getGworld().locLobby==null){
|
||||
newDPlayer=new DPlayer(player,dgroup.getGworld().world,dgroup.getGworld().world.getSpawnLocation(), false);
|
||||
}else{
|
||||
newDPlayer=new DPlayer(player,dgroup.gworld.world,dgroup.gworld.locLobby, false);
|
||||
newDPlayer=new DPlayer(player,dgroup.getGworld().world,dgroup.getGworld().locLobby, false);
|
||||
}
|
||||
newDPlayer.isinTestMode=true;
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ public class GameChest {
|
||||
|
||||
public void addTreasure(DGroup dgroup){
|
||||
if(dgroup!=null){
|
||||
for(Player player:dgroup.players){
|
||||
for(Player player:dgroup.getPlayers()){
|
||||
DPlayer dplayer=DPlayer.get(player);
|
||||
if(dplayer!=null){
|
||||
String msg="";
|
||||
|
@ -20,6 +20,7 @@ import org.bukkit.event.player.PlayerInteractEvent;
|
||||
import org.bukkit.event.player.PlayerJoinEvent;
|
||||
import org.bukkit.event.player.PlayerMoveEvent;
|
||||
import org.bukkit.event.player.PlayerPortalEvent;
|
||||
import org.bukkit.event.player.PlayerQuitEvent;
|
||||
import org.bukkit.event.player.PlayerRespawnEvent;
|
||||
import org.bukkit.event.player.PlayerTeleportEvent;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
@ -111,12 +112,11 @@ public class PlayerListener implements Listener{
|
||||
|
||||
DPlayer dplayer=DPlayer.get(player);
|
||||
if(dplayer!=null){
|
||||
|
||||
|
||||
|
||||
|
||||
//Check GameWorld Signs
|
||||
GameWorld gworld=GameWorld.get(player.getWorld());
|
||||
if(gworld!=null){
|
||||
|
||||
//Ready Sign
|
||||
for(Block blockReady:gworld.blocksReady){
|
||||
if(blockReady.getLocation().distance(clickedBlock.getLocation())<1){
|
||||
@ -128,6 +128,8 @@ public class PlayerListener implements Listener{
|
||||
}else{
|
||||
p.msg(player,p.language.get("Error_Ready"));
|
||||
}
|
||||
}else{
|
||||
dplayer.ready();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -135,13 +137,11 @@ public class PlayerListener implements Listener{
|
||||
//End Sign
|
||||
for(Block blockEnd:gworld.blocksEnd){
|
||||
if(blockEnd.getLocation().distance(clickedBlock.getLocation())<1){
|
||||
if(!dplayer.isFinished){
|
||||
if(event.getAction()==Action.LEFT_CLICK_BLOCK){
|
||||
dplayer.finish();
|
||||
return;
|
||||
}else{
|
||||
p.msg(player,p.language.get("Error_Leftklick"));
|
||||
}
|
||||
if(event.getAction()==Action.LEFT_CLICK_BLOCK){
|
||||
dplayer.finish();
|
||||
return;
|
||||
}else{
|
||||
p.msg(player,p.language.get("Error_Leftklick"));
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -227,13 +227,13 @@ public class PlayerListener implements Listener{
|
||||
DGroup dgroup=DGroup.get(dplayer.player);
|
||||
|
||||
if(dplayer.checkpoint==null){
|
||||
event.setRespawnLocation(dgroup.gworld.locStart);
|
||||
event.setRespawnLocation(dgroup.getGworld().locStart);
|
||||
|
||||
//Da einige Plugins einen anderen Respawn setzen wird ein Scheduler gestartet der den Player nach einer Sekunde teleportiert.
|
||||
p.getServer().getScheduler().scheduleSyncDelayedTask(p, new RespawnRunnable(player,dgroup.gworld.locStart), 10);
|
||||
p.getServer().getScheduler().scheduleSyncDelayedTask(p, new RespawnRunnable(player,dgroup.getGworld().locStart), 10);
|
||||
|
||||
if(dplayer.wolf!=null){
|
||||
dplayer.wolf.teleport(dgroup.gworld.locStart);
|
||||
dplayer.wolf.teleport(dgroup.getGworld().locStart);
|
||||
}
|
||||
}else{
|
||||
event.setRespawnLocation(dplayer.checkpoint.location);
|
||||
@ -287,6 +287,29 @@ public class PlayerListener implements Listener{
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.HIGH)
|
||||
public void onPlayerQuit(PlayerQuitEvent event){
|
||||
Player player = event.getPlayer();
|
||||
DPlayer dPlayer = DPlayer.get(player);
|
||||
|
||||
if(dPlayer!=null){
|
||||
//Check GameWorld
|
||||
GameWorld gWorld = GameWorld.get(player.getWorld());
|
||||
if(gWorld != null){
|
||||
int timeUntilKickOfflinePlayer = gWorld.config.timeUntilKickOfflinePlayer;
|
||||
|
||||
if(timeUntilKickOfflinePlayer == 0){
|
||||
dPlayer.leave();
|
||||
} else if(timeUntilKickOfflinePlayer > 0){
|
||||
dPlayer.msg(p.language.get("Player_Offline",dPlayer.player.getName(),""+timeUntilKickOfflinePlayer));
|
||||
dPlayer.offlineTime = System.currentTimeMillis() + timeUntilKickOfflinePlayer*1000;
|
||||
} else {
|
||||
dPlayer.msg(p.language.get("Player_OfflineNeverKick",dPlayer.player.getName()));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.NORMAL)
|
||||
public void onPlayerJoin(PlayerJoinEvent event){
|
||||
Player player = event.getPlayer();
|
||||
|
||||
@ -294,8 +317,14 @@ public class PlayerListener implements Listener{
|
||||
DPlayer dplayer = DPlayer.get(event.getPlayer().getName());
|
||||
if(dplayer != null){
|
||||
dplayer.player = event.getPlayer();
|
||||
|
||||
//Check offlineTime
|
||||
dplayer.offlineTime = 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//Tutorial Mode
|
||||
if(p.mainConfig.tutorialActivated){
|
||||
if(DPlayer.get(player) == null){
|
||||
@ -304,16 +333,16 @@ public class PlayerListener implements Listener{
|
||||
if(p.mainConfig.tutorialStartGroup.equalsIgnoreCase(group)){
|
||||
DGroup dgroup = new DGroup(player, p.mainConfig.tutorialDungeon);
|
||||
|
||||
if(dgroup.gworld == null){
|
||||
dgroup.gworld = GameWorld.load(DGroup.get(player).dungeonname);
|
||||
dgroup.gworld.isTutorial = true;
|
||||
if(dgroup.getGworld() == null){
|
||||
dgroup.setGworld(GameWorld.load(DGroup.get(player).getDungeonname()));
|
||||
dgroup.getGworld().isTutorial = true;
|
||||
}
|
||||
|
||||
if(dgroup.gworld != null){
|
||||
if(dgroup.gworld.locLobby == null){
|
||||
new DPlayer(player,dgroup.gworld.world,dgroup.gworld.world.getSpawnLocation(), false);
|
||||
if(dgroup.getGworld() != null){
|
||||
if(dgroup.getGworld().locLobby == null){
|
||||
new DPlayer(player,dgroup.getGworld().world,dgroup.getGworld().world.getSpawnLocation(), false);
|
||||
}else{
|
||||
new DPlayer(player,dgroup.gworld.world,dgroup.gworld.locLobby, false);
|
||||
new DPlayer(player,dgroup.getGworld().world,dgroup.getGworld().locLobby, false);
|
||||
}
|
||||
}else{
|
||||
p.msg(player,p.language.get("Error_TutorialNotExist"));
|
||||
|
Loading…
Reference in New Issue
Block a user