本文整理汇总了PHP中game::format_cash方法的典型用法代码示例。如果您正苦于以下问题:PHP game::format_cash方法的具体用法?PHP game::format_cash怎么用?PHP game::format_cash使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类game
的用法示例。
在下文中一共展示了game::format_cash方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: send_email
/** Send en bestemt artikkel på e-post */
protected function send_email($row)
{
$this->email->text('Hei,
Siden du ikke lengre er med i avisfirmaet "' . $row['ff_name'] . '" har din artikkel blitt slettet fordi den ikke tilhørte noen utgivelse. I tilfelle du kanskje ønsker å beholde teksten fra artikkelen, sender vi den på e-post.
Avisfirma: ' . $row['ff_name'] . ' <' . ess::$s['path'] . '/ff/?ff_id=' . $row['ff_id'] . '>
Tittel: ' . $row['ffna_title'] . '
Opprettet: ' . ess::$b->date->get($row['ffna_created_time'])->format(date::FORMAT_SEC) . ($row['ffna_updated_time'] ? '
Sist oppdatert: ' . ess::$b->date->get($row['ffna_updated_time'])->format(date::FORMAT_SEC) : '') . ($row['ffna_published'] ? '
Publisert: ' . ess::$b->date->get($row['ffna_published_time'])->format(date::FORMAT_SEC) : '') . '
Pris: ' . game::format_cash($row['ffna_price']) . '
Innhold:
-- START --
' . $row['ffna_text'] . '
-- SLUTT --
--
Kofradia.no
Denne e-posten er sendt til ' . $row['u_email'] . ' som ' . ($row['up_access_level'] == 0 ? 'tidligere tilhørte' : 'tilhører') . ' ' . $row['up_name'] . '
' . ess::$s['path']);
$this->email->format();
mailer::add_emails($this->email, $row['u_email'], "Din tidligere artikkel: {$row['ffna_title']} - Kofradia", true);
putlog("CREWCHAN", "AVISARTIKKEL SLETTET: E-post planlagt for utsendelse. %c4Mailer scriptet må kjøres!");
}
示例2: page_diverse
/**
* Diverse
*/
protected static function page_diverse()
{
// hent totalt resultat i poker for siste 30 dager
$date = ess::$b->date->get();
$date->modify("-30 days");
$date->setTime(0, 0, 0);
$result = \Kofradia\DB::get()->query("\n\t\t\tSELECT SUM(CONVERT(poker_prize - poker_cash, SIGNED) * IF((poker_winner = 1 AND poker_starter_up_id = up_id) OR (poker_winner = 2 AND poker_challenger_up_id = up_id), 1, -1)) sum_result\n\t\t\tFROM poker, users_players\n\t\t\tWHERE poker_time_start >= " . $date->format("U") . " AND up_u_id = " . page_min_side::$active_user->id . " AND (up_id = poker_starter_up_id OR up_id = poker_challenger_up_id) AND poker_state = 4");
$poker_result = $result->fetchColumn(0);
OFC::embed("stats_poker", "graphs/poker?up_id=" . page_min_side::$active_player->id, "100%", 250);
OFC::embed("stats_poker_num", "graphs/pokernum?up_id=" . page_min_side::$active_player->id, "100%", 250);
echo '
<div class="bg1_c">
<h1 class="bg1">Pokerbevegelse siste 30 dager<span class="left2"></span><span class="right2"></span></h1>
<div class="bg1">
<p class="c">Totalt resultat siste 30 dager: ' . game::format_cash($poker_result) . '</p>
<p><span id="stats_poker"></span></p>
<p><span id="stats_poker_num"></span></p>
</div>
</div>';
}
示例3: page_training_show
/**
* Våpentrening
*/
protected function page_training_show()
{
// sett opp og test for anti-bot
$this->training_antibot = new antibot(login::$user->id, "training", 7);
if (MAIN_SERVER) {
$this->training_antibot->check_required();
}
// sett opp skjema
$this->training_form = \Kofradia\Form::getByDomain("training", login::$user);
// ventetid?
$wait = max(0, login::$user->player->data['up_weapon_training_next'] - time());
// skal vi trene våpenet?
if (isset($_POST['wt']) && $this->training_form->validateHashOrAlert(null, "Våpentrening")) {
// kan vi ikke trene nå?
if ($wait > 0) {
redirect::handle();
}
// finnes ikke valget?
$id = (int) postval("training_id");
if (!isset(self::$trainings[$id])) {
ess::$b->page->add_message("Du må velge et alternativ.", "error");
redirect::handle();
}
$opt = self::$trainings[$id];
// lagre valget for neste gang
ess::session_put("training_id", $id);
// har ikke nok cash?
if ($opt['price'] > login::$user->player->data['up_cash']) {
ess::$b->page->add_message("Du har ikke nok penger til å utføre våpentreningen.");
redirect::handle();
}
$f = self::TRAINING_MAX * $opt['percent'];
$next_old = login::$user->player->data['up_weapon_training_next'] ? ' = ' . login::$user->player->data['up_weapon_training_next'] : ' IS NULL';
// utfør våpentrening
$a = \Kofradia\DB::get()->exec("\n\t\t\t\tUPDATE users_players\n\t\t\t\tSET up_weapon_training = up_weapon_training + (1 - up_weapon_training) * {$f}, up_weapon_training_next = " . (time() + $opt['wait']) . ", up_cash = up_cash - {$opt['price']}\n\t\t\t\tWHERE up_id = " . login::$user->player->id . " AND up_cash >= {$opt['price']} AND up_weapon_training_next{$next_old}");
// ikke oppdatert?
if ($a == 0) {
ess::$b->page->add_message("Kunne ikke utføre våpentrening.", "error");
} else {
$this->training_antibot->increase_counter();
ess::$b->page->add_message("Du trente opp våpenet ditt og våpentreningen økte med " . game::format_num((1 - login::$user->player->data['up_weapon_training']) * $f * 100, 2) . " %.");
}
redirect::handle();
}
$training = login::$user->player->data['up_weapon_training'] * 100;
echo '
<div class="bg1_c xsmall">
<h1 class="bg1">Våpentrening<span class="left2"></span><span class="right2"></span></h1>
<div class="bg1">';
if ($wait > 0) {
echo '
<p class="c">Du må vente ' . game::counter($wait, true) . ' før du kan trene våpenet på nytt.</p>';
} else {
// vis alternativene
echo '
<form action="" method="post">
' . $this->training_form->getHTMLInput() . '
<table class="table tablemt center">
<thead>
<tr>
<th>Pris</th>
<th>Ventetid</th>
</tr>
</thead>
<tbody>';
$i = 0;
$match = ess::session_get("training_id") ?: 0;
foreach (self::$trainings as $id => $row) {
echo '
<tr class="box_handle' . (++$i % 2 == 0 ? ' color' : '') . '">
<td class="r"><input type="radio" name="training_id"' . ($match == $id ? ' checked="checked"' : '') . ' value="' . $id . '" />' . game::format_cash($row['price']) . '</td>
<td class="r">' . game::timespan($row['wait']) . '</td>
</tr>';
}
echo '
</tbody>
</table>
<p class="c">' . show_sbutton("Utfør", 'name="wt"') . '</p>
</form>';
}
echo '
<div class="progressbar p' . ($training < 28 ? ' levelcrit' : ($training < 35 ? ' levelwarn' : '')) . '">
<div class="progress" style="width: ' . round(min(100, $training)) . '%">
<p>Våpentrening: ' . ($training == 100 ? '100' : game::format_num($training, 2)) . ' %</p>
</div>
</div>
<p>Du har en <b>' . htmlspecialchars(login::$user->player->weapon->data['name']) . '</b> med <b>' . game::format_num(login::$user->player->data['up_weapon_bullets']) . '</b> ' . fword('kule', 'kuler', login::$user->player->data['up_weapon_bullets']) . '.</p>
<p>Våpentreningen din synker jevnlig i løpet av dagen, og du er nødt til å trene for å holde oppe våpentreningen din. Hvis våpentreningen din faller under 25 %, risikerer du å miste våpenet ditt.</p>
<p>Bedre våpentrening fører til:</p>
<ul class="spacer">
<li>Du forbedrer treffsikkerheten din</li>
<li>Du øker skuddtakten samtidig som treffsikkerheten forblir den samme</li>
</ul>
</div>
</div>';
}
示例4: kuler
/**
* Behandle anti-bot for kuler
*/
protected function kuler()
{
// utføre precheck?
if (!$this->kuler_num) {
if (!$this->kuler_precheck()) {
return;
}
}
$time = time();
\Kofradia\DB::get()->beginTransaction();
$price = $this->kuler_num * login::$user->player->weapon->data['bullet_price'];
// trekk fra pengene og sjekk samtidig om vi faktisk hadde nok penger
$affected = \Kofradia\DB::get()->exec("UPDATE users_players SET up_cash = up_cash - {$price} WHERE up_id = " . login::$user->player->id . " AND up_cash >= {$price}");
if ($affected == 0) {
ess::$b->page->add_message("Du har ikke nok penger på hånda. For å kjøpe {$this->kuler_num} " . fword("kule", "kuler", $this->kuler_num) . " må du ha " . game::format_cash($price) . " på hånda. Kulene ble gjort tilgjengelig for alle igjen.", "error");
\Kofradia\DB::get()->exec("UPDATE bullets SET up_freeze_up_id = NULL, up_freeze_time = 0 WHERE up_freeze_up_id = " . login::$user->player->id);
\Kofradia\DB::get()->commit();
return;
}
// forsøk å skaff alle kulene
$affected = \Kofradia\DB::get()->exec("\n\t\t\tDELETE FROM bullets\n\t\t\tWHERE bullet_freeze_up_id = " . login::$user->player->id . " AND bullet_freeze_time > {$time}\n\t\t\tORDER BY bullet_time\n\t\t\tLIMIT {$this->kuler_num}");
// feil antall kuler anskaffet?
if ($affected != $this->kuler_num) {
// reverser transaksjon
\Kofradia\DB::get()->rollback();
// informer
putlog("DF", "KJØPE KULER: " . login::$user->player->data['up_name'] . " var for treg med å utføre anti-bot for å kjøpe kuler");
ess::$b->page->add_message("Du var for treg og kulene du ønsket å kjøpe var ikke lenger tilgjengelig.", "error");
return;
}
// gi kulene til spilleren
\Kofradia\DB::get()->exec("UPDATE users_players SET up_weapon_bullets = up_weapon_bullets + {$this->kuler_num} WHERE up_id = " . login::$user->player->id);
\Kofradia\DB::get()->commit();
// logg
putlog("DF", "KJØPE KULER: " . login::$user->player->data['up_name'] . " kjøpte {$this->kuler_num} kuler for totalt " . game::format_cash($price));
// informer
ess::$b->page->add_message("Du kjøpte {$this->kuler_num} " . fword("kule", "kuler", $this->kuler_num) . " for " . game::format_cash($price) . ".");
}
示例5: while
<th>Når</th>
<th>Plassering</th>
<th>Premie</th>
<th>Vinnerlodd</th>
<th>Solgte lodd</th>
<th>Spillere</th>
</tr>
</thead>
<tbody>';
$i = 0;
while ($row = $result->fetch()) {
$end = ceil(($row['time'] - 900) / 1800) * 1800 + 900;
echo '
<tr' . (++$i % 2 == 0 ? ' class="color"' : '') . '>
<td class="c">' . $_base->date->get($end)->format() . '<br /><span style="color: #888888">(' . $_base->date->get($row['time'])->format() . ')</a></td>
<td class="r">' . ($row['type'] == 1 ? '<b>' . $row['type'] . '. plass</b>' : $row['type'] . '. plass') . '</td>
<td class="r">' . game::format_cash($row['won']) . '</td>
<td class="c">' . game::format_number($row['l_id']) . '</td>
<td class="c">' . game::format_number($row['total_lodd']) . '</td>
<td class="c">' . game::format_number($row['total_users']) . '</td>
</tr>';
}
echo '
</tbody>
</table>
<p class="c">' . $pagei->pagenumbers(game::address("lotto_vinn", $_GET, array("side")) . "#lotto_vinn", game::address("lotto_vinn", $_GET, array("side"), array("side" => "_pageid_")) . "#lotto_vinn") . '</p>';
}
echo '
</div>
</div>';
$_base->page->load();
示例6: show
/**
* Vis fengsel
*/
protected function show()
{
// er vi i fengsel nå?
if ($wait = $this->up->fengsel_wait()) {
ess::$b->page->add_js_domready('$("fengsel_dusor").focus();');
echo '
<div class="bg1_c xsmall">
<h1 class="bg1">Du er i fengsel<span class="left"></span><span class="right"></span></h1>
<p class="h_right"><a href="node/16">Hjelp</a></p>
<div class="bg1">
<p>Du befinner deg for øyeblikket i fengsel og slipper ut om ' . game::counter($wait, true) . '.</p>' . (!$this->up->is_nostat() ? '
<form action="" method="post">
<input type="hidden" name="sid" value="' . login::$info['ses_id'] . '" />
<input type="hidden" name="expire" value="' . $this->up->data['up_fengsel_time'] . '" />
<dl class="dd_right">
<dt>Dusør for å bryte deg ut</dt>
<dd><input type="text" class="styled w80" name="amount" id="fengsel_dusor" value="' . game::format_cash($this->up->data['up_fengsel_dusor']) . '" /></dd>
</dl>
<p class="c">' . show_sbutton($this->up->data['up_fengsel_dusor'] > 0 ? "Endre dusør" : "Sett dusør", 'name="dusor"') . '</p>
<p class="c">Spilleren som bryter ut mottar kun ' . self::DUSOR_PROFIT * 100 . ' % av dusøren.</p>
</form>' : '') . '
</div>
</div>';
}
// sortering
$sort = new sorts("sort");
$sort->append("asc", "Spiller", "up_name");
$sort->append("desc", "Spiller", "up_name DESC");
$sort->append("asc", "Wanted nivå", "up_wanted_level, up_fengsel_time DESC");
$sort->append("desc", "Wanted nivå", "up_wanted_level DESC, up_fengsel_time DESC");
$sort->append("asc", "Tid igjen", "up_fengsel_time");
$sort->append("desc", "Tid igjen", "up_fengsel_time DESC");
$sort->set_active(requestval("sort"), 5);
// hent folk i fengsel
$sort_info = $sort->active();
$pagei = new pagei(pagei::ACTIVE_GET, "side", pagei::PER_PAGE, 15);
$result = $pagei->query("\n\t\t\tSELECT up_id, up_name, up_access_level, up_fengsel_time, up_fengsel_num, up_fengsel_dusor, ROUND(up_fengsel_dusor * " . self::DUSOR_PROFIT . ") up_fengsel_dusor_get, up_wanted_level\n\t\t\tFROM users_players\n\t\t\tWHERE up_fengsel_time > " . time() . " AND up_access_level != 0\n\t\t\tORDER BY {$sort_info['params']}");
$num = $result->rowCount();
echo '
<div class="bg1_c ' . ($num == 0 ? 'xsmall' : 'xlarge') . '">
<h1 class="bg1">Fengsel<span class="left"></span><span class="right"></span></h1>
<p class="h_right"><a href="node/16">Hjelp</a></p>
<div class="bg1">
<form action="" method="post">
<p class="c dark">Ditt wanted nivå er på ' . game::format_number($this->up->data['up_wanted_level'] / 10, 1) . ' %.</p>';
if ($num == 0) {
echo '
<p class="c dark">Ingen er i fengselet for øyeblikket.</p>
<p class="c"><a href="' . htmlspecialchars(game::address("fengsel", $_GET)) . '" class="button">Oppdater</a></p>';
} else {
echo '
<table class="table center" width="100%">
<thead>
<tr>
<th>Spiller ' . $sort->show_link(0, 1) . '</th>
<th>Wanted<br />nivå ' . $sort->show_link(2, 3) . '</th>
<th>Utbrytning<br />sannsynlighet</th>
<th>Ca. poeng</th>
<th>Dusør</th>
<th>Tid igjen ' . $sort->show_link(4, 5) . '</th>
</tr>
</thead>
<tbody>';
$i = 0;
while ($row = $result->fetch()) {
$prefix = "";
$attr = new attr("class");
if (++$i % 2 == 0) {
$attr->add("color");
}
if (!$this->up->fengsel_check()) {
$attr->add("box_handle");
$prefix = '<input type="radio" name="up_id" value="' . $row['up_id'] . '_' . $row['up_fengsel_time'] . '_' . $row['up_fengsel_dusor'] . '" /> ';
}
$time = $row['up_fengsel_time'] - time();
$prob = self::calc_prob($time, $row['up_wanted_level'] / 10);
$points = self::calc_points($prob);
echo '
<tr' . $attr->build() . '>
<td>' . $prefix . game::profile_link($row['up_id'], $row['up_name'], $row['up_access_level']) . '</td>
<td class="c">' . game::format_number($row['up_wanted_level'] / 10, 1) . ' %</td>
<td class="c">' . game::format_number($prob, 1) . ' %</td>
<td class="c">' . game::format_num($points) . '</td>
<td class="r nowrap">' . game::format_cash($row['up_fengsel_dusor_get']) . '</td>
<td class="r">' . game::counter($time) . '</td>
</tr>';
}
echo '
</tbody>
</table>
<p class="c">' . (($wait = $this->up->fengsel_wait()) == 0 ? '
' . show_sbutton("Bryt ut", 'name="brytut"') : '
Du er i fengsel og slipper ut om ' . game::counter($wait, true) . '.
</p>
<p class="c">') . '
<a href="' . htmlspecialchars(game::address("fengsel", $_GET)) . '" class="button">Oppdater</a>
</p>';
//.........这里部分代码省略.........
示例7: show_full_page
//.........这里部分代码省略.........
echo '
<div class="bydeler_uplassert_boks">
<a href="' . $__server['relative_path'] . '/ff/?ff_id=' . $row['ff_id'] . '" class="bydeler_ressurs ' . $class . '">
<img class="bydeler_ressurs_graphic" src="' . htmlspecialchars(ff::get_logo_path_static($row['ff_id'], $row['ff_logo_path'])) . '" alt="" />
<span class="bydeler_ressurs_tekst">
' . htmlspecialchars($row['ff_name']) . '<span class="bydeler_owner"><br />
' . $eier . '</span>
</span>
<img class="bydeler_ressurs_t" src="' . htmlspecialchars($type['bydeler_graphic']) . '" alt="' . htmlspecialchars($type['bydeler_alt_pre']) . htmlspecialchars($row['ff_name']) . '" />
</a>
</div>';
}
echo '
</div>';
}
echo '
<div class="bydeler_kart bydeler_steder">
<img src="' . STATIC_LINK . '/themes/kofradia/drammen_stor.gif" class="bydeler_bg" />';
foreach ($this->bydeler as $bydel) {
if ($bydel['active'] == 0) {
continue;
}
if ($this->up) {
$distance = self::calc_travel_distance($this->up->bydel, $bydel);
$taxi_price = round($distance * self::TAXI_PRICE_KM);
$taxi_points = round($distance * self::TAXI_POINTS_KM * $this->up->rank['number']);
}
echo '
<div class="map_unit' . ($this->up && $this->up->bydel['id'] == $bydel['id'] ? ' map_active' : '') . '" style="left: ' . $bydel['bydel_x'] . '%; top: ' . $bydel['bydel_y'] . '%" id="map_link_' . $bydel['id'] . '">
<div class="map_title">
<p class="map_link"><b><b><b>' . htmlspecialchars($bydel['name']) . '</b></b></b></p>
<div class="bydeler_sted">
<div class="bydeler_sted_info">
<dl class="dd_right">
<dt>Spillere</dt>
<dd>' . game::format_number($bydel['num_players']) . '</dd>
<dt>Penger i omløp</dt>
<dd>' . game::format_cash($bydel['sum_money']) . '</dd>
</dl>';
if (!$this->up) {
} elseif ($this->up->bydel['id'] == $bydel['id']) {
echo '
<p>Du befinner deg i denne bydelen.</p>';
} elseif ($this->up->fengsel_check()) {
echo '
<p>Du er i fengsel og kan ikke reise.</p>';
} elseif ($this->up->bomberom_check()) {
echo '
<p>Du er i bomberom og kan ikke reise.</p>';
} else {
echo '
<div class="bydeler_reise c">
<form action="bydeler" method="post">
<input type="hidden" name="reise" value="' . htmlspecialchars($bydel['name']) . '" />';
// taxi
if (!$this->up->energy_check(self::TAXI_ENERGY * 1.3)) {
echo '
<p>Du har ikke nok energi til å ta taxi hit.</p>';
} elseif ($this->up->data['up_points'] < $taxi_points * 2) {
echo '
<p>Du har ikke høy nok rank til å ta taxi hit.</p>';
} else {
echo '
<p>' . show_sbutton("Ta taxi (" . game::format_cash($taxi_price) . ", " . game::format_number(round($taxi_points)) . " poeng)", 'name="taxi"') . '</p>';
}
// gta
if ($this->gta_count == 0) {
echo '
<p>Du har ingen biler i bydelen du oppholder deg i for å reise med.</p>';
} elseif (!$this->gta_garage[$bydel['id']]['garage']) {
echo '
<p>Det er ingen garasje i denne bydelen.</p>';
} elseif ($this->gta_garage[$bydel['id']]['garage_free'] == 0) {
echo '
<p>Det er ingen ledige plasser i garasjen i denne bydelen.</p>';
} else {
echo '
<p>' . show_sbutton("Kjør egen bil", 'name="gta"') . '</p>';
}
// teleportere
if (access::is_nostat()) {
echo '
<p>' . show_sbutton("Teleporter hit (nostat)", 'name="teleporter"') . '</p>';
}
echo '
</form>
</div>';
}
echo '
</div>
</div>
</div>
</div>';
}
echo '
</div>';
echo '
</div>';
ess::$b->page->load();
}
示例8: sell_reject
/**
* Avslå salg
*/
public function sell_reject()
{
global $_game;
// hent status
$status = $this->sell_status(true);
if (!$status) {
return false;
}
// sørg for at dette er brukeren som skulle selges til
if (!$this->uinfo || $status['up_id'] != $this->uinfo->id) {
$this->params->commit();
throw new HSException("Kun brukeren som har mottatt salget kan behandle det.");
}
// fjern fra params
$this->params->remove("sell");
// legg til logg hos selgeren
player::add_log_static("ff_diverse", '<user id="' . $status['up_id'] . '" /> avslo kjøpet av ' . $this->refstring . ' <a href="' . ess::$s['relative_path'] . '/ff/?ff_id=' . $this->id . '">' . htmlspecialchars($this->data['ff_name']) . '</a> for ' . game::format_cash($status['amount']) . '.', $this->id, $status['init_up_id']);
// logg i FF: {TYPE=reject}:BOSS:UBOSS:FEE:AMOUNT
$this->add_log("sell", "reject:{$status['init_up_id']}:{$status['up_id']}:{$status['fee']}:{$status['amount']}");
// avslutt transaction
$this->params->commit();
return true;
}
示例9: attack_log
/**
* Lagre logg over angrep
*/
protected function attack_log($ret, $attack_type, $vitner_log, player $up)
{
// sett opp vitner
$vitner = count($vitner_log) > 0 ? \Kofradia\DB::quote(serialize($vitner_log)) : 'NULL';
// sett opp liste over FF
$ff_defend = array();
$list = $this->get_ff_list();
foreach ($list as $row) {
if ($row['ff_is_crew'] != 0) {
continue;
}
$type = ff::$types[$row['ff_type']];
$ff_defend[] = array($row['ff_type'], $row['ff_id'], $type['refobj'], $row['ff_name'], $row['ffm_priority'], $type['priority'][$row['ffm_priority']], $row['ffm_status']);
}
$ff_defend = count($ff_defend) > 0 ? \Kofradia\DB::quote(serialize($ff_defend)) : 'NULL';
// sett opp liste over FF for angriper
$ff_attack = array();
$list = $up->get_ff_list();
foreach ($list as $row) {
if ($row['ff_is_crew'] != 0) {
continue;
}
$type = ff::$types[$row['ff_type']];
$ff_attack[] = array($row['ff_type'], $row['ff_id'], $type['refobj'], $row['ff_name'], $row['ffm_priority'], $type['priority'][$row['ffm_priority']], $row['ffm_status']);
}
$ff_attack = count($ff_attack) > 0 ? \Kofradia\DB::quote(serialize($ff_attack)) : 'NULL';
// legg til i loggen
$cash = isset($ret['penger']) ? $ret['penger'] : 0;
if (isset($ret['penger_bank'])) {
$cash = bcadd($cash, $ret['penger_bank']);
}
$hitlist = isset($ret['hitlist']) ? $ret['hitlist'] : 0;
\Kofradia\DB::get()->exec("INSERT INTO drapforsok SET df_attack_up_id = {$up->id}, df_defend_up_id = {$this->id}, df_time = " . time() . ", df_b_id = " . $up->data['up_b_id'] . ", df_outcome = " . ($ret['drept'] ? 1 : 0) . ", df_rankpoints = {$ret['rankpoeng']}, df_type = {$attack_type}, df_cash = {$cash}, df_hitlist = {$hitlist}, df_vitner = {$vitner}, df_attack_ff_list = {$ff_attack}, df_defend_ff_list = {$ff_defend}, df_bullets = {$ret['bullets']}");
if ($ret['drept']) {
// logg
if ($attack_type == self::ATTACK_TYPE_UTPRESSING) {
putlog("DF", "%c4UTPRESSING DREPT%c: {$up->data['up_name']} ({$up->rank['name']}) presset {$this->data['up_name']} ({$this->rank['name']}). " . $this->generate_minside_url());
} else {
putlog("DF", "ANGREP %c4DREPT%c: {$up->data['up_name']} ({$up->rank['name']}) angrep%c3 {$this->data['up_name']}%c ({$this->rank['name']}) med " . $up->weapon->data['name'] . " (" . game::format_number($up->data['up_weapon_training'] * 100, 2) . " % våpentrening) med " . fwords("%d kule", "%d kuler", $ret['bullets']) . ". " . $this->generate_minside_url());
putlog("DF", " - Angrepstyrke: " . game::format_number($ret['attack_skade'][0] * 100, 2) . ", beskyttelsestyrke: " . game::format_number($ret['attack_skade'][1] * 100, 2) . ", skadeprosent: " . game::format_number($ret['skadeprosent'] * 100, 2) . " % av " . weapon::MAX_ATTACK_HEALTH . " helsepoeng");
}
putlog("DF", " - Helse: Hadde " . game::format_number($this->get_health_percent(), 3) . " %");
putlog("DF", " - Energi: Hadde " . game::format_number($this->get_energy_percent(), 3) . " %");
if (!$this->protection->data) {
putlog("DF", " - Hadde ingen beskyttelse");
} else {
putlog("DF", " - Beskyttelse: Hadde {$this->protection->data['name']} med " . game::format_number($this->data['up_protection_state'] * 100, 2) . " % styrke");
}
putlog("DF", " - Rankpoeng: {$up->data['up_name']} fikk " . game::format_number($ret['rankpoeng']) . " rankpoeng (" . game::format_rank($ret['rankpoeng'], "all") . " % rank) " . $up->generate_minside_url());
if (count($ret['vitner']) == 0) {
putlog("DF", " - Ingen vitner");
} else {
foreach ($ret['vitner'] as $vitne) {
putlog("DF", " - Vitne: {$vitne['up']->data['up_name']} (" . ($vitne['visible'] ? 'ble oppdaget' : 'ble IKKE oppdaget') . ') ' . $vitne['up']->generate_minside_url());
}
}
putlog("DF", " - Penger fra hånda: " . game::format_cash($ret['penger']));
if (isset($ret['penger_bank'])) {
putlog("DF", " - Penger fra banken: " . game::format_cash($ret['penger_bank']));
}
putlog("DF", " - Penger fra hitlist: " . game::format_cash($ret['hitlist']));
foreach ($ret['ffm'] as $ffm) {
putlog("DF", " - Var " . $ffm->get_priority_name() . " i " . $ffm->ff->data['ff_name'] . " " . ess::$s['path'] . "/ff/?ff_id={$ffm->ff->id}");
}
} elseif ($attack_type == self::ATTACK_TYPE_KILL) {
// logg
putlog("DF", "ANGREP %c8SKADET%c: {$up->data['up_name']} ({$up->rank['name']}) angrep%c3 {$this->data['up_name']}%c ({$this->rank['name']}) med " . $up->weapon->data['name'] . " (" . game::format_number($up->data['up_weapon_training'] * 100, 2) . " % våpentrening) med " . fwords("%d kule", "%d kuler", $ret['bullets']) . ". " . $this->generate_minside_url());
putlog("DF", " - Angrepstyrke: " . game::format_number($ret['attack_skade'][0] * 100, 2) . ", beskyttelsestyrke: " . game::format_number($ret['attack_skade'][1] * 100, 2) . ", skadeprosent: " . game::format_number($ret['skadeprosent'] * 100, 2) . " % av " . weapon::MAX_ATTACK_HEALTH . " helsepoeng");
putlog("DF", " - Helse: Mistet " . game::format_number($ret['health_lost_p'] * 100, 3) . " % ({$ret['health_lost']}) og har nå%c4 " . game::format_number($ret['health_new_p'] * 100, 3) . " %");
putlog("DF", " - Energi: Mistet " . game::format_number($ret['energy_lost_p'] * 100, 3) . " % ({$ret['energy_lost']}) og har nå%c12 " . game::format_number($ret['energy_new_p'] * 100, 3) . " %");
if ($ret['protection_replaced']) {
putlog("DF", " - Beskyttelsen ble erstattet med " . $this->protection->data['name']);
} elseif ($ret['protection_lost_p'] == "") {
putlog("DF", " - Hadde ingen beskyttelse");
} else {
putlog("DF", " - Beskyttelse: Mistet " . game::format_number($ret['protection_lost_p'] * 100, 3) . " % og har nå " . game::format_number($ret['protection_new_p'] * 100, 3) . " %");
}
putlog("DF", " - Rankpoeng: {$up->data['up_name']} fikk " . game::format_num($ret['rankpoeng']) . " rankpoeng (offeret mistet " . game::format_num($ret['rankpoeng_lost']) . ") " . $up->generate_minside_url());
if (count($ret['vitner']) == 0) {
putlog("DF", " - Ingen vitner");
} else {
foreach ($ret['vitner'] as $vitne) {
putlog("DF", " - Vitne: {$vitne['up']->data['up_name']} (" . ($vitne['visible'] ? 'ble oppdaget' : 'ble IKKE oppdaget') . ') ' . $vitne['up']->generate_minside_url());
}
}
putlog("DF", " - Penger fra hånda: " . game::format_cash($ret['penger']));
putlog("DF", " - Penger fra hitlist: " . game::format_cash($ret['hitlist']));
}
}
示例10: decide
/**
* Godta/avslå søknad
* @param boolean $outcome - om søknaden blir innvilget eller ikke
* @param integer $ds_id
* @param string $reason
*/
public static function decide($outcome, $ds_id, $reason)
{
global $_base, $__server;
$ds_id = (int) $ds_id;
// hent søknaden
$soknad = self::get($ds_id);
// fant ikke søknaden?
if (!$soknad) {
return false;
}
// er søknaden allerede behandlet?
if ($soknad['ds_reply_decision'] != 0) {
return false;
}
// typen
$type = self::get_type($soknad['ds_type']);
// har vi tilgang til søknaden?
if (!access::has($type['access'])) {
return false;
}
// sjekk for tom begrunnelse
$have_reason = trim(game::format_data($reason)) != "";
// sett opp params
$params = unserialize($soknad['ds_params']);
// sett opp søknadsinfo
$info = self::get_info($type['name'], $soknad, $params);
// info er ikke gyldig - søknaden er ikke gyldig
if (!is_array($info)) {
// slett søknaden
self::delete($ds_id);
return $info;
}
// avslå søknad
if (!$outcome) {
$msg = 'bb:' . $type['title'] . ': Din søknad ble avslått. (' . $info['bb'] . ') Begrunnelse: ' . ($have_reason ? $reason : 'Ingen begrunnelse gitt.');
// spesielle handlinger
switch ($type['name']) {
case "ff_name":
// sett tilbakepengene på bankkontoen
if (isset($params['cost']) && $params['cost'] > 0) {
$msg .= ' Beløpet på ' . game::format_cash($params['cost']) . ' som ble innbetalt ved søknad er satt inn på kontoen igjen.';
ff::bank_static(ff::BANK_TILBAKEBETALING, $params['cost'], $soknad['ds_rel_id'], 'Navnsøknad avslått: ' . $params['name']);
}
break;
}
} else {
$msg = 'bb:' . $type['title'] . ': Din søknad har blitt innvilget. (' . $info['bb'] . ') Begrunnelse: ' . ($have_reason ? $reason : 'Ingen begrunnelse gitt.');
// spesielle handlinger
switch ($type['name']) {
case "ff_name":
$ff = ff::get_ff($soknad['ds_rel_id'], ff::LOAD_SCRIPT);
if ($ff) {
$ff->change_name($params['name'], $soknad['ds_up_id']);
// lagre gammelt navn på FF i søknaden
$params['name_old'] = $info['ff_name'];
}
break;
}
}
// legg til logg hos spilleren
player::add_log_static("soknader", $msg, 0, $soknad['ds_up_id']);
// oppdater søknaden
\Kofradia\DB::get()->exec("UPDATE div_soknader SET ds_params = " . \Kofradia\DB::quote(serialize($params)) . ", ds_reply_decision = " . ($outcome ? 1 : -1) . ", ds_reply_reason = " . \Kofradia\DB::quote($reason) . ", ds_reply_up_id = " . self::up_id() . ", ds_reply_time = " . time() . " WHERE ds_id = {$ds_id}");
// oppdater cache
tasks::set("soknader", \Kofradia\DB::get()->query("SELECT COUNT(ds_id) FROM div_soknader WHERE ds_reply_decision = 0")->fetchColumn(0));
return $info;
}
示例11: prize
/**
* Formatter tekst for premie (og gi ut hvis spesifisert)
*/
protected function prize($give = false)
{
// mulige premier:
// * cash
// * points
// * bullets
$params = new params($this->a->data['ac_prize']);
$text = array();
// cash
if ($cash = $params->get("cash")) {
if ($give) {
$this->up->update_money($cash);
}
$text[] = game::format_cash($cash);
}
// points
if ($points = $params->get("points")) {
if ($give) {
$this->up->increase_rank($points);
}
$text[] = game::format_num($points) . " rankpoeng";
}
// kuler
if ($bullets = $params->get("bullets")) {
$bullets = (int) $bullets;
// har vi plass til noen kuler?
if ($this->up->weapon) {
$kap = $this->up->weapon ? $this->up->weapon->data['bullets'] : 0;
$free = $kap - $this->up->data['up_weapon_bullets'] - $this->up->data['up_weapon_bullets_auksjon'];
$bullets = max(0, min($free, $bullets));
if ($bullets > 0) {
if ($give) {
// gi kuler
\Kofradia\DB::get()->exec("UPDATE users_players SET up_weapon_bullets = up_weapon_bullets + {$bullets} WHERE up_id = {$this->up->id}");
$this->up->data['up_weapon_bullets'] += $bullets;
}
$text[] = fwords("%d kule", "%d kuler", $bullets);
}
}
}
return sentences_list($text);
}
示例12: generate_page
protected static function generate_page()
{
/*<div class="default_hidden" id="content"><a href="#top">Til toppen av siden</a></div>
<div class="default_hidden"><a href="#content">Til toppen av innholdet</a></div>*/
$extra_classes = '';
// vise juleheader?
$d = ess::$b->date->get();
if ($d->format("m") == 12) {
$extra_classes .= ' juleheader';
}
echo '<!DOCTYPE html>
<html lang="no">
<head>
<title>' . ess::$b->page->generate_title() . '</title>' . ess::$b->page->generate_head() . '</head>
<body class="' . self::$class_browser . self::$class_crew . (self::$locked ? ' is_lock' : '') . $extra_classes . '" id="default_th">' . ess::$b->page->body_start . '
<!--<div class="default_hidden print" id="top">
<h1><a href="' . ess::$s['absolute_path'] . '">kofradia.no</a></h1>
<p class="default_hidden"><a href="#content">Til innholdet</a></p>
</div>-->
<div id="default_header_wrap">
<div id="default_header_img"></div>
<div id="default_header">';
$boxes = theme_helper::get_extended_access_boxes();
if ($boxes) {
echo '
<div id="cboxes"' . (!access::has("mod") ? ' class="nocus"' : '') . '>';
foreach ($boxes as $box) {
echo '
<p class="box"><a href="' . $box[0] . '">' . $box[1] . '</a></p>';
}
echo '
</div>';
}
echo self::get_extended_access_login();
echo self::get_extended_access_links();
echo self::get_extended_access_search();
echo '
<p id="toplink"><a href="' . ess::$s['path'] . '/" title="Gå til forsiden"></a></p>
<p id="fb_link"><a href="http://www.facebook.com/kofradia" target="_blank"><span>Du finner oss på Facebook</span></a></p>';
//<p id="donate_link"><a href="'.ess::$s['relative_path'].'/donasjon" title="Doner »"><span>Donér »</span></a></p>';
$blog_links = self::get_blog_links();
if ($blog_links) {
echo '
<p id="blog_link">' . implode("<br />", $blog_links) . '</p>';
}
echo '
<ul id="default_topmenu">
<li><a href="' . ess::$s['relative_path'] . '/loggut?sid=' . login::$info['ses_id'] . '" onclick="return confirm(\'Er du sikker på at du vil logge ut?\\n\\nTips! Trykk Esc knappen tre ganger for å logge ut uten å måtte trykke på denne knappen!\')"><b>Logg ut</b></a></li>
<li><a href="' . ess::$s['relative_path'] . '/innboks">Meldinger</a></li>';
if (!self::$locked) {
echo '
<li><a href="' . ess::$s['relative_path'] . '/kontakter">Kontakter</a></li>
<li><a href="' . ess::$s['relative_path'] . '/finn_spiller">Finn spiller</a></li>';
}
echo '
<li><a href="' . ess::$s['relative_path'] . '/min_side?u&a=set">Innstillinger</a></li>';
if (!self::$locked) {
echo '
<li><a href="' . ess::$s['relative_path'] . '/irc/client/" target="_blank">Chat</a></li>';
}
echo '
</ul>
<div id="status_info"></div>
<p id="default_profilbilde">
<span id="default_profilbilde_wrap">
<a href="' . ess::$s['relative_path'] . '/min_side?' . (!login::$user->player->active ? "up_id=" . login::$user->player->id . '&' : '') . 'a=profil&b=profilbilde" class="profile_image_edit"><img src="/static/icon/image.png" /> endre</a>
<a href="' . ess::$s['relative_path'] . '/p/' . login::$user->player->data['up_name'] . '"><img src="' . htmlspecialchars(login::$user->player->get_profile_image()) . '" alt="Ditt profilbilde" class="profile_image" /></a>
</span>
</p>
<p id="default_playername">' . game::profile_link() . '</p>' . self::get_oppdrag_status() . '
</div>
<div id="default_header_subline">
<p id="server_klokka"><span>' . self::$date_now->format(date::FORMAT_WEEKDAY) . ' ' . self::$date_now->format(date::FORMAT_NOTIME) . ' - ' . self::$date_now->format("H:i:s") . '</span></p>
<div id="pm_new">' . (self::$num_pm > 0 ? '<p class="notification_box"><a href="' . ess::$s['relative_path'] . '/innboks"><b>' . self::$num_pm . ' ' . fword("ny</b> melding", "nye</b> meldinger", self::$num_pm) . '</a></p>' : '') . '</div>
<div id="log_new">' . (self::$num_log > 0 ? '<p class="notification_box"><a href="' . ess::$s['relative_path'] . '/min_side?log"><b>' . self::$num_log . ' ' . fword("ny</b> hendelse", "nye</b> hendelser", self::$num_log) . '</a></p>' : '') . '</div>';
if (login::$user->data['u_log_crew_new'] > 0 && isset(login::$extended_access)) {
echo '
<p class="notification_box"><a href="' . ess::$s['relative_path'] . '/min_side?u&a=crewlog"><b>' . login::$user->data['u_log_crew_new'] . '</b> ' . fword("ny hendelse som crew", "nye hendelser som crew", login::$user->data['u_log_crew_new']) . '</a></p>';
}
if (!self::$locked) {
echo '
<div id="def_ui2">
<p>' . login::$user->player->getRank()->getName() . '</p>
<p><span class="farge">Sted: </span> <span id="status_bydel">' . game::$bydeler[login::$user->player->data['up_b_id']]['name'] . '</span></p>
<p><span class="farge">Har ute</span> <span id="status_cash">' . game::format_cash(login::$user->player->data['up_cash']) . '</span></p>
<p><span class="farge">Plassering: </span> nr. <span id="status_rankpos">' . login::$user->player->data['upr_rank_pos'] . '</span></p>
</div>';
}
echo '
</div>
</div>
<div id="default_left">';
if (!login::$user->player->active) {
echo '
<div id="default_info_dead">
<a href="' . ess::$s['relative_path'] . '/lock?f=player">' . (login::$user->player->data['up_deactivated_dead'] == 2 ? '
<span>Din spiller blødde ihjel pga. lite energi.</span>' : (login::$user->player->data['up_deactivated_dead'] ? '
<span>Din spiller har blitt drept.</span>' : '
<span>Din spiller er deaktivert.</span>')) . '
//.........这里部分代码省略.........
示例13: show_release
/**
* Trekk tilbake dusør
*/
protected function show_release()
{
if (!isset($_POST['hl_id'])) {
ess::$b->page->add_message("Du må velge en dusør du har satt.", "error");
redirect::handle("etterlyst");
}
$hl_id = (int) $_POST['hl_id'];
// hent informasjon
$result = \Kofradia\DB::get()->query("SELECT hl_up_id, hl_time, hl_amount, hl_amount_valid FROM hitlist WHERE hl_id = {$hl_id} AND hl_by_up_id = " . $this->up->id . " AND hl_amount_valid > 0");
$hl = $result->fetch();
if (!$hl) {
ess::$b->page->add_message("Fant ikke oppføringen.", "error");
redirect::handle("etterlyst");
}
\Kofradia\DB::get()->beginTransaction();
// slett oppføringen
$a = \Kofradia\DB::get()->exec("DELETE FROM hitlist WHERE hl_id = {$hl_id} AND hl_amount_valid = {$hl['hl_amount_valid']}");
if ($a == 0) {
ess::$b->page->add_message("Noen kom deg i forkjøpet og kjøpte ut hele eller deler av dusøren.", "error");
\Kofradia\DB::get()->commit();
redirect::handle("etterlyst");
}
// hvor mye penger skal vi få?
$result = \Kofradia\DB::get()->query("SELECT ROUND({$hl['hl_amount_valid']}/2)");
$amount = $result->fetchColumn(0);
// gi penger
\Kofradia\DB::get()->exec("UPDATE users_players SET up_cash = up_cash + {$amount} WHERE up_id = " . $this->up->id);
\Kofradia\DB::get()->commit();
putlog("LOG", "ETTERLYST: " . $this->up->data['up_name'] . " trakk tilbake dusør for UP_ID={$hl['hl_up_id']} på " . game::format_cash($hl['hl_amount_valid']) . '.');
ess::$b->page->add_message('Du trakk tilbake dusøren på <user id="' . $hl['hl_up_id'] . '" /> som ble satt ' . ess::$b->date->get($hl['hl_time'])->format() . ' og som hadde igjen ' . game::format_cash($hl['hl_amount_valid']) . '. Du fikk tilbake ' . game::format_cash($amount) . '.');
redirect::handle("etterlyst");
}
示例14: format_data
public static function format_data($data, $type = "bb", $args = null)
{
global $_base;
switch ($type) {
case "bb":
case "signature":
// bb kode
return game::bb_to_html($data);
// bb-kode eller egendefinert tekst hvis bb-kode er tom
// bb-kode eller egendefinert tekst hvis bb-kode er tom
case "bb-opt":
$bb = trim(game::bb_to_html($data));
if ($bb == "") {
return $args;
}
return $bb;
case "music_pre":
return preg_replace('~\\[music\\](https?://.+?)\\[/music\\]~ieu', 'game::music_add(\'$1\')', $data);
case "music_post":
return game::music_replace($data);
case "profile":
$data = game::format_data($data, "music_pre");
// sett opp ranken
$rank = game::rank_info($args->data['up_points'], $args->data['upr_rank_pos'], $args->data['up_access_level']);
// diverse bb koder
$data = str_replace(array("[counter]", "[visits]", "[visitor]", "[rank]", "[bank]", "[cash]", "[money]", "[renter]", "[pm_ulest]", "[pengerank]"), array('<img src="&rpath;/counter?count=' . $args->data['up_profile_hits'] . '" alt="Antall visninger: ' . $args->data['up_profile_hits'] . '" />', $args->data['up_profile_hits'], game::profile_link(), $rank['orig'] ? $rank['orig'] : $rank['name'], game::format_cash($args->data['up_bank']), game::format_cash($args->data['up_cash']), game::format_cash($args->data['up_cash'] + $args->data['up_bank']), game::format_cash($args->data['up_interest_last']), game::format_number($args->user->data['u_inbox_new']), game::cash_name($args->data['up_cash'] + $args->data['up_bank'])), game::bb_to_html($data));
// rankbar
$type = false;
$match_rank = preg_match("~\\[rank_(neste_tid|neste_dato|tid|dato)\\]~iu", $data);
if (preg_match("~\\[rankbar( type=(1|2))?\\]~iu", $data, $type) || $match_rank) {
// høyeste rank?
if ($rank['need_points'] == 0) {
global $_game;
$prosent = $args->data['up_points'] / game::$ranks['items_number'][count(game::$ranks['items_number'])]['points'] * 100;
$rankbar_total = '
<div class="progressbar">
<div class="progress"><p>' . game::format_num($prosent, 3) . ' %</p></div>
</div>';
$rankbar_total2 = '
<div class="progressbar" style="margin-top: 1em">
<div class="progress"><p>' . game::format_num($prosent, 3) . ' %</p></div>
</div>';
$data = str_replace(array("[rankbar]", "[rankbar type=1]", "[rankbar type=2]", "[rank_tid]", "[rank_dato]", "[rank_neste_tid]", "[rank_neste_dato]"), array($rankbar_total . $rankbar_total2, $rankbar_total, $rankbar_total, "Oppnådd", "Oppnådd", "Oppnådd", "Oppnådd"), $data);
} else {
// i forhold til den høyeste ranken
global $_game;
// antall poeng for den høyeste ranken
$points_max = game::$ranks['items'];
end($points_max);
$points_max = current($points_max);
$points_max = $points_max['points'];
// hvor langt ifra er vi?
$percent_total = round($args->data['up_points'] / $points_max, 2) * 100;
#if ($percent_total > 100) $percent_total = 100;
if ($percent_total == 0) {
$percent_total = 0.01;
}
$rankbar_total = '
<div class="progressbar">
<div class="progress" style="width: ' . floor($percent_total) . '%"><p>' . game::format_num($percent_total, 2) . ' % i forhold til høyeste rank.</p></div>
</div>';
// i forhold til neste rank
$points_rank = $args->data['up_points'] - $rank['points'];
$percent = round($points_rank / $rank['need_points'] * 100, 2);
#if ($percent )
$rankbar_next = '
<div class="progressbar">
<div class="progress" style="width: ' . floor($percent) . '%"><p>' . game::format_num($percent, 2) . ' % i forhold til neste rank</p></div>
</div>';
$rankbar_next2 = '
<div class="progressbar" style="margin-top: 1em">
<div class="progress" style="width: ' . floor($percent) . '%"><p>' . game::format_num($percent, 2) . ' % i forhold til neste rank</p></div>
</div>';
// fiks bb kodene
$data = str_replace(array("[rankbar]", "[rankbar type=1]", "[rankbar type=2]"), array($rankbar_total . $rankbar_next2, $rankbar_total, $rankbar_next), $data);
// beregn antatt tid det tar å nå høyeste rank
if ($match_rank) {
// hent ut aktiviteten de siste X dagene
$expire = ess::$b->date->get();
$expire->modify("-21 days");
$expire = max($args->data['up_created_time'], $expire->format("U"));
// maks tid: siste 21 dager eller siden reg (om registrert innen 30 dager)
$result = \Kofradia\DB::get()->query("SELECT SUM(uhi_points) FROM users_hits WHERE uhi_up_id = {$args->id} AND uhi_secs_hour >= {$expire}");
$points = (int) $result->fetchColumn(0);
if ($points == 0) {
$data = str_replace(array("[rank_tid]", "[rank_dato]", "[rank_neste_tid]", "[rank_neste_dato]"), array("ukjent", "ukjent", "ukjent", "ukjent"), $data);
} else {
// antall sekunder poengene skal fordeles på
$time_elapsed = time() - $expire;
// beregn til neste rank og erstatt BB-kode
$need = $rank['points'] + $rank['need_points'] - $args->data['up_points'];
$time_left = $need / $points * $time_elapsed;
if ($time_left > 63072000) {
$text_left = "over 2 år";
$text_date = "om over 2 år";
} else {
$text_left = game::timespan($time_left);
$text_date = ess::$b->date->get($time_left + time())->format(date::FORMAT_NOTIME);
}
$data = str_replace(array("[rank_neste_tid]", "[rank_neste_dato]"), array($text_left, $text_date), $data);
//.........这里部分代码省略.........
示例15: gevinster
function gevinster()
{
global $gevinster;
$stats = array();
// hent total statistikk
$result = \Kofradia\DB::get()->query("SELECT subname, count, count2 FROM stats WHERE area = 'poker' AND name = 'alt' AND stats_up_id = 0");
while ($row = $result->fetch()) {
$stats[$row['subname']]['total'] = $row['count'];
$stats[$row['subname']]['total_cash'] = $row['count2'];
}
// hent bruker statistikk
$result = \Kofradia\DB::get()->query("SELECT subname, count, count2 FROM stats WHERE area = 'poker' AND name = 'alt' AND stats_up_id = " . login::$user->player->id);
while ($row = $result->fetch()) {
$stats[$row['subname']]['count'] = $row['count'];
$stats[$row['subname']]['cash'] = $row['count2'];
}
// skriv tabell
$ret = '
<h1>Statistikk</h1>
<table class="table game" id="poker_info">
<thead>
<tr>
<th>Navn</th>
<th>Penger</th>
<th>Stats</th>
</tr>
</thead>
<tbody>';
$i = 0;
$totalt_cash_1 = 0;
$totalt_cash_2 = 0;
$totalt_stat_1 = 0;
$totalt_stat_2 = 0;
foreach ($gevinster as $gevinst) {
if (isset($stats[$gevinst[0]])) {
$totalt_stat_1 += $stats[$gevinst[0]]['count'];
$totalt_stat_2 += $stats[$gevinst[0]]['total'];
$stat = '<b>' . game::format_number($stats[$gevinst[0]]['count']) . '</b> (' . game::format_number($stats[$gevinst[0]]['total']) . ')';
$cash_total = $stats[$gevinst[0]]['total_cash'];
$cash = $stats[$gevinst[0]]['cash'];
} else {
$stat = '<b>0</b> (0)';
$cash_total = 0;
$cash = 0;
}
if ($gevinst[0] == 0) {
$cash = $cash * -1;
$cash_total = $cash_total * -1;
}
$totalt_cash_1 += $cash;
$totalt_cash_2 += $cash_total;
$cash = game::format_cash($cash) . ' (' . game::format_cash($cash_total) . ')';
$ret .= '
<tr' . (is_int(++$i / 2) ? ' class="color"' : '') . '>
<td>' . htmlspecialchars(ucfirst($gevinst[1])) . '</td>
<td align="right"><span style="color: #999">Innsats *</span> ' . game::format_number($gevinst[2], 2) . '</td>
<td align="right" title="' . $cash . '">' . $stat . '</td>
</tr>';
}
if (isset($stats[0])) {
$stat = '<b>' . game::format_number($stats[0]['count']) . '</b> (' . game::format_number($stats[0]['total']) . ')';
$cash_total = $stats[0]['total_cash'];
$cash = $stats[0]['cash'];
} else {
$stats = '<b>0</b> (0)';
$cash_total = 0;
$cash = 0;
}
$cash = game::format_cash($cash) . ' (' . game::format_cash($cash_total) . ')';
$stat = '<b>' . game::format_number($totalt_stat_1) . '</b> (' . game::format_number($totalt_stat_2) . ')';
$cash = game::format_cash($totalt_cash_1) . ' (' . game::format_cash($totalt_cash_2) . ')';
$ret .= '
<tr class="spacer"><td colspan="3"> </td></tr>
<tr' . (is_int($i / 2) ? ' class="color"' : '') . '>
<td><b>Totalt</b></td>
<td> </td>
<td align="right" title="' . $cash . '">' . $stat . '</td>
</tr>
<tr class="spacer"><td colspan="3"> </td></tr>
<tr' . (is_int(++$i / 2) ? ' class="color"' : '') . '>
<td colspan="3"><b>Tips</b>: Hold musa over stats feltet for å se pengestats!</td>
</tr>
</tbody>
</table>';
return $ret;
}