private Action updateAction = new Action(ActCode.GAME_UPDATE);;
public StartGame()
{
ScheduleAction(updateAction);
}
public void EnqueueOperation(ZPeer peer, OperationRequest operationRequest, SendParameters sendParameters)
{
executionFiber.Enqueue(() => ExecuteOperation(peer, operationRequest, sendParameters));
}
public void EnqueueAction(Action action)
{
executionFiber.Enqueue(() => ProcessAction(action));
}
public IDisposable ScheduleAction(Action action, long timeMs)
{
return executionFiber.Schedule(() => ProcessAction(action), timeMs);
}
protected void ProcessAction(Action action)
{
switch (action.actionCode)
{
case ActCode.GAME_UPDATE:
Update();
break;
default:
log.ErrorFormat("Game.ProcessAction: ERROR: Uncknown actionCode={0}", action.actionCode);
break;
}
}
public void Update()
{
...
ScheduleAction(updateAction, 50);//повторить через 50 миллисекунд
}
ximael писал(а):
- Код: Выделить всё
private Action updateAction = new Action(ActCode.GAME_UPDATE);;
public StartGame()
{
ScheduleAction(updateAction);
}
public void EnqueueOperation(ZPeer peer, OperationRequest operationRequest, SendParameters sendParameters)
{
executionFiber.Enqueue(() => ExecuteOperation(peer, operationRequest, sendParameters));
}
public void EnqueueAction(Action action)
{
executionFiber.Enqueue(() => ProcessAction(action));
}
public IDisposable ScheduleAction(Action action, long timeMs)
{
return executionFiber.Schedule(() => ProcessAction(action), timeMs);
}
protected void ProcessAction(Action action)
{
switch (action.actionCode)
{
case ActCode.GAME_UPDATE:
Update();
break;
default:
log.ErrorFormat("Game.ProcessAction: ERROR: Uncknown actionCode={0}", action.actionCode);
break;
}
}
public void Update()
{
...
ScheduleAction(updateAction, 50);//повторить через 50 миллисекунд
}
И куда мне в фотон сервере все это вставлять? Это не фотон клауд случаем?
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4