コード例 #1
0
ファイル: yahtzee.c プロジェクト: GNOME/tali
/* Test if we can use suggested score slot */
int
play_score (int player, int field)
{
  int i;

  /* Special case for yahtzee, allow multiple calls if 1st wasn't 0 */

  /* This, however, was broken: it didn't actually check to see if the
   * user had a yahtzee if this wasn't their first time clicking on it.
   * Bad. -- [email protected] */
  if (field == 11 && game_type == GAME_YAHTZEE) {
    if ((players[player].used[11] && (players[player].score[11] == 0)))
      return SLOT_USED;

    if ((players[player].used[11] && !find_yahtzee ()))
      return SLOT_USED;
  } else if (players[player].used[field])
    return SLOT_USED;

  players[player].used[field] = 1;
  players[player].score[field] = players[player].score[field] + field_score (field);
  PrependUndoList (player, field, players[player].score[field]);

  ShowPlayer (player, field);

  for (i = 0; i < NUM_FIELDS; ++i)
    if (!players[player].used[i])
      return SCORE_OK;

  players[player].finished = 1;

  return SCORE_OK;
}
コード例 #2
0
void
PlayerDlg::Show()
{
	FormWindow::Show();

	if (!lst_roster) return;
	lst_roster->ClearItems();
	lst_roster->SetSelectedStyle(ListBox::LIST_ITEM_STYLE_FILLED_BOX);
	lst_roster->SetLeading(2);

	int current_index = 0;

	List<Player>& roster = Player::GetRoster();
	for (int i = 0; i < roster.size(); i++) {
		Player* p = roster[i];
		lst_roster->AddItem(p->Name());
		if (p == Player::GetCurrentPlayer())
		current_index = i;
	}

	lst_roster->SetSelected(current_index);
	ShowPlayer();

	apply->SetEnabled(roster.size() > 0);
}
コード例 #3
0
void GSVe3ViewOtherPlayers::OnActive()
{
  GSGui::OnActive();

  m_gui = LoadGui("gui-ve3-viewotherplayers.txt");
  Assert(m_gui);

  GetElementByName(m_gui, "back-button")->SetCommand(OnBack);
  GetElementByName(m_gui, "prev-player-button")->SetCommand(OnPrevPlayer);
  GetElementByName(m_gui, "next-player-button")->SetCommand(OnNextPlayer);

  GetElementByName(m_gui, "make-trade-button")->SetCommand(Amju::OnMakeATrade);
  GetElementByName(m_gui, "see-guestbook-button")->SetCommand(Amju::OnSeeGuestbook);

  // Initialise character
  if (m_player && 
      m_player->GetId() != GetLocalPlayerId()) // could happen if you log out, then in as this player
  {
    ShowPlayer(m_player, m_gui);
  }
  else
  {
    NextPlayer();
  }

  SetHomeButton();
}
コード例 #4
0
ファイル: EC_MediaPlayer.cpp プロジェクト: katik/naali
QMenu *EC_MediaPlayer::GetContextMenu()
{
    QMenu *actionMenu = new QMenu(0);
    actionMenu->setAttribute(Qt::WA_DeleteOnClose, true);
    actionMenu->addAction(QIcon(":/images/playpause.png"), "Play/Pause", this, SLOT(PlayPauseToggle()));
    actionMenu->addAction(QIcon(":/images/stop.png"), "Stop", this, SLOT(Stop()));
    actionMenu->addAction("Show Player", this, SLOT(ShowPlayer()));
    return actionMenu;
}
コード例 #5
0
ファイル: yahtzee.c プロジェクト: GNOME/tali
void
ResetDiceState (UndoScoreElement *elem) {
  gint ii;
  for (ii = 0; ii < NUMBER_OF_DICE; ii++) {
    DiceValues[ii].val = elem->DiceValues[ii];
    DiceValues[ii].sel = 0;
  }
  NumberOfRolls = elem->roll;
  ShowPlayer (elem->player, elem->field);
}
コード例 #6
0
void GSVe3ViewOtherPlayers::NextPlayer()
{
  Player* localPlayer = GetLocalPlayer();

  GameObjects* gos = TheObjectManager::Instance()->GetGameObjects();
  int id = -1;
  if (m_player)
  {
    id = m_player->GetId();
  }

  // Remember first player, go to if we reach the end
  Player* first = 0;
  bool found = false;

  for (auto it = gos->begin(); it != gos->end(); ++it)
  {
    GameObject* go = it->second;
    Player* p = dynamic_cast<Player*>(go);
    if (p == localPlayer)
    {
      continue;
    }

    if (p && !first)
    {
      first = p;
    }

    if (p && p->GetId() > id)
    {
      m_player = p;
      found = true;
      break;
    }
  }

  if (!found)
  {
    m_player = first; // wrap around if poss
  }

  if (m_player)
  {
    ShowPlayer(m_player, m_gui);
  }
}
コード例 #7
0
void
PlayerDlg::OnDelConfirm(AWEvent* event)
{
	Player::Destroy(Player::GetCurrentPlayer());
	ShowPlayer();

	if (!lst_roster) return;
	lst_roster->ClearItems();

	List<Player>& roster = Player::GetRoster();
	for (int i = 0; i < roster.size(); i++) {
		Player* p = roster[i];
		lst_roster->AddItem(p->Name());
		lst_roster->SetSelected(i, (p == Player::GetCurrentPlayer()));
	}

	apply->SetEnabled(roster.size() > 0);
}
コード例 #8
0
void
PlayerDlg::OnSelectPlayer(AWEvent* event)
{
	if (!lst_roster) return;

	UpdatePlayer();

	int index = lst_roster->GetSelection();

	List<Player>& roster = Player::GetRoster();
	if (index >= 0 && index < roster.size()) {
		Player::SelectPlayer(roster.at(index));
	}

	ShowPlayer();

	apply->SetEnabled(roster.size() > 0);
}
コード例 #9
0
ファイル: ControlEvent.cpp プロジェクト: ltframe/ltplayer0016
void ControlEvent::ShowPlayer()
{
	ShowPlayer(parenthwnd,per_parenthwnd,SW_HIDE);
}