Пример #1
0
char *StartStateManager::StateName(StatePtr p)
{
  state nextstate;
  if (!p.isStart())
    Error.Notrace
	("Internal: Cannot find startstate name for non startstate");
  for (what_startstate = 0; what_startstate < numstartstates;
       what_startstate++) {
    StartState();
    StateCopy(&nextstate, workingstate);

    if (StateEquivalent(&nextstate, p))
      return LastStateName();
  }

//  Norris: it is very funny, but the following code is supposed to work, but it doesn't
//
//   state * nextstate;
//   for(what_startstate=0; what_startstate<numstartstates; what_startstate++)
//     {
//       nextstate = StartState();                  // nextstate points to internal data at theworld.getstate()
//       if (p.compare(nextstate))
//      return LastStateName();
//     }

  Error.Notrace
      ("Internal: Cannot find startstate name for funny startstate");
  return NULL;
}
Пример #2
0
state *StartStateManager::NextStartState()
{
  static int next_startstate = 0;
  if (next_startstate >= numstartstates)
    return NULL;
  what_startstate = next_startstate++;
  return StartState();
}
Пример #3
0
	void StateMachine::OnStart() {

		for (auto& globalState : globalStates) {
			globalState->Start();
		}

		if (currentState != nullptr) {
			StartState(currentState);
		}
	}
Пример #4
0
void StartStateManager::AllStartStates()
{
  state *nextstate = NULL;

  for (what_startstate = 0; what_startstate < numstartstates;
       what_startstate++) {
    nextstate = StartState();	// nextstate points to internal data at theworld.getstate()
    (void) StateSet->Add(nextstate, FALSE, TRUE);
  }
}
Пример #5
0
state *StartStateManager::RandomStartState()
{
  what_startstate = (unsigned short) (random.next() % numstartstates);
  return StartState();
}
Пример #6
0
void CMainMenuSection::Reaction(long srcId, const CHamster_InitMainMenuResponse& out)
{
    StartState();
}
Пример #7
0
void CGameSection::Reaction(long src, const CPreloaderSection_MatrixLoadResponse& in )
{
	m_pField->SetHamsterAnimation(in.m_pController);
	StartState();
}