java.lang.Exception: Stack trace
at java.lang.Thread.dumpStack (Unknown Source)
at l2f.gameserver.model.entity.olympiad.OlympiadGameTask.runImpl (Olympia
dGameTask.java:193)
at l2f.commons.threading.RunnableImpl.run (RunnableImpl.java:21)
at java.util.concurrent.Executors $ RunnableAdapter.call (Unknown Source)
at java.util.concurrent.FutureTask $ Sync.innerRun (Unknown Source)
at java.util.concurrent.FutureTask.run (Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.
access $ 201 (Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.
run (Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker (Unknown Source)
at java.util.concurrent.ThreadPoolExecutor $ Worker.run (Unknown Source)
at java.lang.Thread.run (Unknown Source)
Hello i have this problem when i register in olympiad the timer reach 7 seconds then console show this error
my files l2 tales old source .
this file OlympiadGameTask.java
package l2f.gameserver.model.entity.olympiad;
import l2f.commons.threading.RunnableImpl;
import l2f.gameserver.Config;
import l2f.gameserver.ThreadPoolManager;
import l2f.gameserver.cache.Msg;
import l2f.gameserver.network.serverpackets.SystemMessage;
import l2f.gameserver.utils.Log;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.concurrent.ScheduledFuture;
public class OlympiadGameTask extends RunnableImpl
{
private static final Logger _log = LoggerFactory.getLogger(OlympiadGameTask.class);
private OlympiadGame _game;
private BattleStatus _status;
private int _count;
private long _time;
private boolean _terminated = false;
public boolean isTerminated()
{
return _terminated;
}
public BattleStatus getStatus()
{
return _status;
}
public int getCount()
{
return _count;
}
public OlympiadGame getGame()
{
return _game;
}
public long getTime()
{
return _count;
}
public ScheduledFuture<?> shedule(){returnThreadPoolManager.getInstance().schedule(this, _time);}publicOlympiadGameTask(OlympiadGame game,BattleStatus status,int count,long time){
_game = game;
_status = status;
_count = count;
_time = time;}@Overridepublicvoid runImpl()throwsException{if(_game ==null|| _terminated)return;OlympiadGameTask task =null;int gameId = _game.getId();try{if(!Olympiad.inCompPeriod())return;// Прерываем игру, если один из игроков не онлайн, и игра еще не прерванаif(!_game.checkPlayersOnline()&& _status !=BattleStatus.ValidateWinner&& _status !=BattleStatus.Ending){Log.add("Player is offline for game "+ gameId +", status: "+ _status,"olympiad");
_game.endGame(1000,true);return;}switch(_status){caseBegining:{
_game.broadcastPacket(newSystemMessage(SystemMessage.YOU_WILL_ENTER_THE_OLYMPIAD_STADIUM_IN_S1_SECOND_S).addNumber(Config.OLYMPIAD_BEGIN_TIME),true,false);
task =newOlympiadGameTask(_game,BattleStatus.Begin_Countdown,Config.OLYMPIAD_BEGIN_TIME /2,(Config.OLYMPIAD_BEGIN_TIME /2)*1000);break;}caseBegin_Countdown:{
_game.broadcastPacket(newSystemMessage(SystemMessage.YOU_WILL_ENTER_THE_OLYMPIAD_STADIUM_IN_S1_SECOND_S).addNumber(_count),true,false);if(_count ==60)
task =newOlympiadGameTask(_game,BattleStatus.Begin_Countdown,30,30000);elseif(_count ==30)
task =newOlympiadGameTask(_game,BattleStatus.Begin_Countdown,15,15000);elseif(_count ==15)
task =newOlympiadGameTask(_game,BattleStatus.Begin_Countdown,5,10000);elseif(_count <6&& _count >1)
task =newOlympiadGameTask(_game,BattleStatus.Begin_Countdown, _count -1,1000);elseif(_count ==1)
task =newOlympiadGameTask(_game,BattleStatus.PortPlayers,0,1000);break;}casePortPlayers:{
_game.portPlayersToArena();
_game.managerShout();
task =newOlympiadGameTask(_game,BattleStatus.Started,60,1000);break;}caseStarted:{if(_count ==60){
_game.setState(1);
_game.preparePlayers();
_game.addBuffers();
_game.restorePreparePlayers();}
_game.broadcastPacket(newSystemMessage(SystemMessage.THE_GAME_WILL_START_IN_S1_SECOND_S).addNumber(_count),true,true);
_count -=10;if(_count >0){
task =newOlympiadGameTask(_game,BattleStatus.Started, _count,10000);break;}
_game.openDoors();
task =newOlympiadGameTask(_game,BattleStatus.CountDown,5,5000);break;}caseCountDown:{
_game.broadcastPacket(newSystemMessage(SystemMessage.THE_GAME_WILL_START_IN_S1_SECOND_S).addNumber(_count),true,true);
_count--;if(_count <=0)
task =newOlympiadGameTask(_game,BattleStatus.StartComp,36,1000);else
task =newOlympiadGameTask(_game,BattleStatus.CountDown, _count,1000);break;}caseStartComp:{
_game.deleteBuffers();if(_count ==36){
_game.setState(2);
_game.broadcastPacket(Msg.STARTS_THE_GAME,true,true);
_game.broadcastInfo(null,null,false);}// Wait 3 mins (Battle)
_count--;if(_count ==0)
task =newOlympiadGameTask(_game,BattleStatus.ValidateWinner,0,10000);else
task =newOlympiadGameTask(_game,BattleStatus.StartComp, _count,10000);break;}caseValidateWinner:{try{
_game.validateWinner(_count >0);}catch(RuntimeException e){
_log.error("Error on Olympiad Validate Winner", e);}
task =newOlympiadGameTask(_game,BattleStatus.Ending,0,20000);break;}caseEnding:{
_game.collapse();
_terminated =true;if(Olympiad._manager !=null)Olympiad._manager.freeOlympiadInstance(_game.getId());return;}}if(task ==null){Log.add("task == null for game "+ gameId,"olympiad");Thread.dumpStack();
_game.endGame(1000,true);return;}
_game.sheduleTask(task);}catch(RuntimeException e){
_log.error("Error on Olympiad Game Task", e);
_game.endGame(1000,true);}}}
You can post now and register later.
If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.
Question
Mikel Alan
java.lang.Exception: Stack trace at java.lang.Thread.dumpStack (Unknown Source) at l2f.gameserver.model.entity.olympiad.OlympiadGameTask.runImpl (Olympia dGameTask.java:193) at l2f.commons.threading.RunnableImpl.run (RunnableImpl.java:21) at java.util.concurrent.Executors $ RunnableAdapter.call (Unknown Source) at java.util.concurrent.FutureTask $ Sync.innerRun (Unknown Source) at java.util.concurrent.FutureTask.run (Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask. access $ 201 (Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask. run (Unknown Source) at java.util.concurrent.ThreadPoolExecutor.runWorker (Unknown Source) at java.util.concurrent.ThreadPoolExecutor $ Worker.run (Unknown Source) at java.lang.Thread.run (Unknown Source)
Hello i have this problem when i register in olympiad the timer reach 7 seconds then console show this error
my files l2 tales old source .
this file OlympiadGameTask.java
1 answer to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.