当前位置: 首页>>代码示例>>PHP>>正文


PHP game::counter方法代码示例

本文整理汇总了PHP中game::counter方法的典型用法代码示例。如果您正苦于以下问题:PHP game::counter方法的具体用法?PHP game::counter怎么用?PHP game::counter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在game的用法示例。


在下文中一共展示了game::counter方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: add_topic_error_wait

 /**
  * Må vente før ny forumtråd kan legges til
  * @param integer $wait ventetid
  */
 protected function add_topic_error_wait($wait)
 {
     \ajax::html("Du må vente " . \game::counter($wait) . " før du kan opprette ny forumtråd.", \ajax::TYPE_INVALID);
 }
开发者ID:Kuzat,项目名称:kofradia,代码行数:8,代码来源:CategoryAjax.php

示例2: handle_ret

    /** Behandle respons */
    public function handle_ret($id, $data = NULL)
    {
        switch ($id) {
            case self::RET_INFO_DELETED_OWN:
                echo '
<p class="info_box">Du viser en av dine egne meldinger som har blitt slettet.</p>';
                break;
            case self::RET_INFO_DELETED:
                echo '
<p class="info_box">Denne meldingen tilhører ikke deg.</p>';
                break;
            case self::RET_INFO_REPORTED:
                echo '
<p class="info_box">Du har tilgang til denne meldingstråden fordi den er eller har vært rapportert.</p>';
                break;
            case self::RET_ERROR_404:
                ess::$b->page->add_message("Fant ikke meldingstråden.", "error");
                redirect::handle("innboks");
                break;
            case self::RET_ERROR_CANNOT_REPLY:
                ess::$b->page->add_message("Du kan ikke svare på denne meldingstråden.", "error");
                redirect::handle();
                break;
            case self::RET_ERROR_NO_RECEIVERS:
                ess::$b->page->add_message("Det er ingen mottakere du kan sende svar til.", "error");
                redirect::handle();
                break;
            case self::RET_ERROR_BAN_CREW:
                ess::$b->page->add_message("Du er blokkert fra å sende meldinger til andre enn Crewet. Du kan kun ha én mottaker. Blokkeringen varer til " . ess::$b->date->get($data['ub_time_expire'])->format(date::FORMAT_SEC) . ".<br /><b>Begrunnelse:</b> " . game::format_data($data['ub_reason'], "bb-opt", "Ingen begrunnelse gitt."), "error");
                break;
            case self::RET_ERROR_BAN:
                ess::$b->page->add_message("Du er blokkert fra å sende meldinger til andre enn Crewet. Blokkeringen varer til " . ess::$b->date->get($data['ub_time_expire'])->format(date::FORMAT_SEC) . ".<br /><b>Begrunnelse:</b> " . game::format_data($data['ub_reason'], "bb-opt", "Ingen begrunnelse gitt."), "error");
                break;
            case self::RET_ERROR_BLOCKED:
                foreach ($data as &$row) {
                    $row = game::profile_link($row['up_id'], $row['up_name'], $row['up_access_level']) . (($reason = game::bb_to_html($row['uc_info'])) == "" ? "" : ' - begrunnelse: ' . $reason);
                }
                ess::$b->page->add_message("Du kan ikke svare på denne meldingstråden fordi følgende brukere har blokkert deg:<ul><li>" . implode("</li><li>", $data) . "</li></ul>", "error");
                break;
            case self::RET_INFO_BLOCKED:
                foreach ($data as &$row) {
                    $row = game::profile_link($row['up_id'], $row['up_name'], $row['up_access_level']) . (($reason = game::bb_to_html($row['uc_info'])) == "" ? "" : ' - begrunnelse: ' . $reason);
                }
                ess::$b->page->add_message("Følgende brukere har egentlig blokkert deg:<ul><li>" . implode("</li><li>", $data) . "</li></ul>");
                break;
            case self::RET_ERROR_WAIT:
                global $__server;
                ess::$b->page->add_message('Du må vente ' . game::counter($data) . ' før du kan sende en melding!', "error");
                putlog("LOG", "%c13%bMELDING FORSØK%b%c: %u" . login::$user->player->data['up_name'] . "%u forsøkte å svare på en melding til it_id {$this->id} (%u{$this->data_thread['it_title']}%u). Må vente {$data} sekunder. {$__server['path']}/innboks_les?id={$this->id}");
                break;
            case self::RET_ERROR_CONTENT_SHORT:
                ess::$b->page->add_message("Meldingen kan ikke inneholde færre enn 3 bokstaver/tall.", "error");
                break;
            case self::RET_ERROR_MARK_NO_REL:
                ess::$b->page->add_message("Du har ikke mulighet til å markere denne meldingstråden da du ikke er en deltaker i den.", "error");
                break;
            case self::RET_INFO_MARK_ALREADY:
                if ($this->data_rel['ir_marked']) {
                    ess::$b->page->add_message("Meldingstråden er allerede markert som merket.");
                } else {
                    ess::$b->page->add_message("Meldingstråden er ikke merket fra før.");
                }
                break;
            case self::RET_INFO_MARK_TRUE:
                ess::$b->page->add_message("Meldingstråden er nå markert for oppfølging.");
                break;
            case self::RET_INFO_MARK_FALSE:
                ess::$b->page->add_message("Meldingstråden er ikke lenger markert for oppfølging.");
                break;
            default:
                throw new HSException("Ukjent behandler.");
        }
    }
开发者ID:Kuzat,项目名称:kofradia,代码行数:74,代码来源:class.inbox_thread.php

示例3: utpress

 /**
  * Kontroller inndata og utfør utpressing
  */
 public function utpress()
 {
     // wait time?
     if (($wait = $this->ut->getWait()) > 0) {
         \ess::$b->page->add_message("Du må vente " . \game::counter($wait, true) . " før du kan utføre en ny utpressing.", "error");
         return;
     }
     // validate form
     $form_info = '';
     if ($this->ut->up->data['up_utpressing_last']) {
         $form_info = sprintf("Siste=%s;", \game::timespan($this->ut->up->data['up_utpressing_last'], \game::TIME_ABS | \game::TIME_SHORT | \game::TIME_NOBOLD));
     } else {
         $form_info = "First;";
     }
     if ($wait) {
         $form_info .= sprintf("%%c11Ventetid=%s%%c", \game::timespan($wait, \game::TIME_SHORT | \game::TIME_NOBOLD));
     } else {
         $form_info .= "%c9No-wait%c";
     }
     if (!$this->form->validateHashOrAlert(postval('hash'), $form_info)) {
         return;
     }
     // mangler alternativ?
     $option = $this->ut->getOption(postval("opt"));
     if (!$option) {
         \ess::$b->page->add_message("Du må velge et alternativ.", "error");
         return;
     }
     // lagre valg for neste gang
     \ess::session_put("utpressing_opt_key", postval("opt"));
     // forsøk utpressing
     $result = $this->ut->utpress($option);
     if ($msg = $result->getMessage()) {
         \ess::$b->page->add_message($msg);
     }
     // oppdater anti-bot
     $this->antibot->increase_counter();
 }
开发者ID:Kuzat,项目名称:kofradia,代码行数:41,代码来源:Utpressing.php

示例4: check_wait

 /**
  * Sjekk for ventetid
  */
 protected function check_wait()
 {
     // ventetid - 20 sekunder
     // TODO: forbedre denne så den sjekker antall meldinger sendt siste 10 min eller liknende
     if (access::has("crewet")) {
         $wait = 0;
     } else {
         $wait = max(0, login::$user->data['u_inbox_sent_time'] + 20 - time());
     }
     // ventetid?
     if ($wait > 0) {
         ess::$b->page->add_message('Du må vente ' . game::counter($wait) . ' før du kan sende en melding.', "error");
         putlog("LOG", "%c13%bMELDING FORSØK%b%c: %u" . login::$user->player->data['up_name'] . "%u forsøkte å opprette en ny melding. Må vente {$wait} sekunder.");
         return false;
     }
     return true;
 }
开发者ID:Kuzat,项目名称:kofradia,代码行数:20,代码来源:innboks_ny.php

示例5: show

    protected function show($as_who = null)
    {
        $complete = $this->data['poker_state'] == self::STATE_COMPLETE;
        if ($complete) {
            $winner = $this->get_winner();
        }
        $is_starter = $as_who == self::SHOW_STARTER;
        $has_challenger = $this->data['poker_state'] >= self::STATE_CHALLENGE;
        $new = $this->data['poker_state'] == self::STATE_BEGIN;
        $challenge = !$is_starter && $this->data['poker_state'] == self::STATE_CHALLENGE;
        echo '
<div class="bg1_c small">
	<h1 class="bg1">' . ($is_starter ? $new ? 'Nytt pokerspill' : 'Ditt pokerspill' : 'Din utfordring') . '<span class="left"></span><span class="right"></span></h1>
	<div class="bg1">';
        if ($new) {
            echo '
		<p>Du har nå startet et nytt pokerspill og fortsetter ved å velge de kortene du vil <u>beholde</u>. Når du har trykket fortsett kommer du opp på listen for utfordrere og andre kan spille mot deg.</p>
		<form action="" method="post">
		<input type="hidden" name="state1" value="' . $this->id . '" />';
        } elseif ($challenge) {
            $time_left = $this->data['poker_time_challenge'] + self::MAX_CHALLENGE_TIME - time();
            echo '
		<p>Du må fullføre din utfordring innen <b>' . game::counter($time_left, true) . '</b>. Dersom du ikke fullfører vil spillet automatisk velge kort for deg.</p>
		<form action="" method="post">
		<input type="hidden" name="state3" value="' . $this->id . '" />';
        }
        echo '
		<dl class="dd_right center" style="width: 60%">
			<dt>Tid siden start</dt>
			<dd>' . game::timespan($this->data['poker_time_start'], game::TIME_ABS) . '</dd>' . ($has_challenger ? '
			<dt>Tid siden utfordring</dt>
			<dd>' . game::timespan($this->data['poker_time_challenge'], game::TIME_ABS) . '</dd>' : '') . '
			<dt>Innsats</dt>
			<dd>' . game::format_cash($this->data['poker_cash']) . '</dd>' . ($has_challenger ? '
			<dt>Utfordrer</dt>
			<dd><user id="' . $this->data['poker_' . ($is_starter ? 'challenger' : 'starter') . '_up_id'] . '" /></dd>' : '
			<dt>Utfordrer</dt>
			<dd>Ingen enda</dd>') . '
		</dl>';
        if ($complete || $has_challenger && access::has("admin")) {
            echo '
		<div class="poker_cards_section">
			<p><b>Motstanderens kort:</b> ' . ($is_starter ? $this->text2 : $this->text1) . '</p>
			<p>';
            if ($is_starter) {
                $this->list_cards($this->poker2, $this->solve2);
            } else {
                $this->list_cards($this->poker1, $this->solve1);
            }
            echo '
			</p>
		</div>';
        }
        echo '
		<div class="poker_cards_section">
			<p><b>Dine kort:</b> ' . ($is_starter ? $this->text1 : $this->text2) . '</p>' . ($challenge ? '
			<p>Marker de kortene du ønsker å <u>beholde</u>.</p>' : '') . '
			<p>';
        if ($new || $challenge) {
            ess::$b->page->add_js('sm_scripts.poker_parse();');
            if ($new) {
                $this->list_cards_selectable($this->poker1, $this->solve1);
            } else {
                $this->list_cards_selectable($this->poker2, $this->solve2);
            }
        } elseif ($is_starter) {
            $this->list_cards($this->poker1, $this->solve1);
        } else {
            $this->list_cards($this->poker2, $this->solve2);
        }
        echo '
			</p>
		</div>';
        if ($complete) {
            if ($winner[0] == 1 && !$is_starter || $winner[0] == 2 && $is_starter) {
                if ($winner[1]) {
                    echo '
		<p class="poker_res_lost">Dere fikk samme kombinasjon, men motstanderen din hadde høyere highcard. Du tapte runden...</p>';
                } else {
                    echo '
		<p class="poker_res_lost">Motstanderen fikk bedre kombinasjon enn deg. Du tapte runden...</p>';
                }
            } elseif ($winner[0] != 0) {
                if ($winner[1]) {
                    echo '
		<p class="poker_res_won">Dere fikk samme kombinasjon, men du hadde høyere highcard og vant ' . game::format_cash($this->data['poker_prize']) . '!</p>';
                } else {
                    echo '
		<p class="poker_res_won">Du fikk bedre kombinasjon enn motstanderen og vant ' . game::format_cash($this->data['poker_prize']) . '!</p>';
                }
            } else {
                echo '
		<p class="poker_res_eq">Runden ble uavgjort.</p>';
            }
        } elseif ($new) {
            echo (access::has("admin") ? '
			<p class="c"><input type="checkbox" name="renew" id="renew"' . (isset($_POST['renew']) ? ' checked="checked"' : '') . '><label for="renew"> Ikke avslutt runden</label></p>' : '') . '
			<p class="c">' . show_sbutton("Velg kort og åpne runden") . '</p>
			</form>';
        } elseif ($challenge) {
//.........这里部分代码省略.........
开发者ID:Kuzat,项目名称:kofradia,代码行数:101,代码来源:class.poker_round.php

示例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>';
//.........这里部分代码省略.........
开发者ID:Kuzat,项目名称:kofradia,代码行数:101,代码来源:fengsel.php

示例7: handle_reply

 /** Forsøk å legg til ny melding i henvendelsen */
 protected function handle_reply()
 {
     // sjekk for blokkering
     $blokkering = blokkeringer::check(blokkeringer::TYPE_SUPPORT);
     if ($blokkering) {
         ess::$b->page->add_message("Du er blokkert fra å sende inn henvendelser til support. Blokkeringen varer til " . ess::$b->date->get($blokkering['ub_time_expire'])->format(date::FORMAT_SEC) . ".<br /><b>Begrunnelse:</b> " . game::format_data($blokkering['ub_reason'], "bb-opt", "Ingen begrunnelse gitt."), "error");
         return;
     }
     $text = trim(postval("text"));
     // tom tekst?
     if (empty($text)) {
         ess::$b->page->add_message("Du må fylle inn en melding.", "error");
         return;
     }
     // sjekk for ventetid
     if (!access::has("crewet")) {
         // hvor lenge er det siden forrige melding ble lagt til?
         $result = \Kofradia\DB::get()->query("\n\t\t\t\tSELECT sum_time FROM support_messages, users_players\n\t\t\t\tWHERE up_u_id = " . login::$user->id . " AND sum_up_id = up_id\n\t\t\t\tORDER BY sum_id DESC LIMIT 1");
         if ($result->rowCount() > 0) {
             $last = $result->fetchColumn(0);
             $wait = max(0, $last + support::$ventetid_reply - time());
             if ($wait > 0) {
                 ess::$b->page->add_message('Du må vente ' . game::counter($wait) . ' før du kan legge til nytt svar.', "error");
                 return;
             }
         }
     }
     // sjekk om det har blitt lagt til noen nye meldinger siden vi viste siden
     $result = \Kofradia\DB::get()->query("SELECT sum_id FROM support_messages WHERE sum_su_id = {$this->data['su_id']} ORDER BY sum_time DESC LIMIT 1");
     $last_sum = $result->rowCount() > 0 ? $result->fetchColumn(0) : 0;
     if (!isset($_POST['last_sum']) || $_POST['last_sum'] != $last_sum) {
         ess::$b->page->add_message("Nytt svar har blitt lagt til siden du viste siden sist. Trykk legg til melding på nytt for å fortsette.", "error");
         return;
     }
     // legg til meldingen
     \Kofradia\DB::get()->exec("INSERT INTO support_messages SET sum_su_id = {$this->data['su_id']}, sum_up_id = " . login::$user->player->id . ", sum_time = " . time() . ", sum_text = " . \Kofradia\DB::quote($text));
     // endre status?
     if ($this->own) {
         $su_solved = 0;
     } elseif (isset($_POST['solve'])) {
         $su_solved = 1;
     } else {
         $su_solved = 0;
     }
     \Kofradia\DB::get()->exec("UPDATE support SET su_solved = {$su_solved} WHERE su_id = {$this->data['su_id']}");
     // sende logg til spilleren som henvendelsen tilhører?
     if (!$this->own) {
         global $_game;
         player::add_log_static("support", login::$user->player->id . ":" . $this->data['su_title'], $this->data['su_id'], $this->data['new_up_id']);
     }
     // fiks antall nye henvendelser
     support::update_tasks();
     // fjern fra status
     if (!$this->own) {
         $this->status_remove();
     }
     if ($this->own) {
         putlog("CREWCHAN", "%c11%bSUPPORT HENVENDELSE OPPDATERT%b%c: %u" . login::$user->player->data['up_name'] . "%u la til nytt svar i %u{$this->data['su_title']}%u " . ess::$s['spath'] . "/support/?a=show&su_id={$this->data['su_id']}");
     }
     ess::$b->page->add_message("Meldingen ble lagt til.");
     redirect::handle("?a=show&su_id={$this->data['su_id']}");
 }
开发者ID:Kuzat,项目名称:kofradia,代码行数:63,代码来源:class.support.php

示例8: kick_handle

    /**
     * Kaste ut en spiller
     */
    protected function kick_handle()
    {
        // valider sid
        validate_sid();
        // kan vi ikke kaste ut noen spillere nå?
        if (login::$user->player->fengsel_check() || login::$user->player->bomberom_check() || login::$user->player->data['up_b_id'] != $this->ff->data['br_b_id'] || !$this->kick_hour_ok) {
            redirect::handle();
        }
        // mangler spillervalg?
        if (!isset($_POST['player'])) {
            ess::$b->page->add_message("Du må velge en spiller du vil kaste ut.", "error");
            redirect::handle();
        }
        // er ikke spilleren i bomberommet?
        $up_id = (int) $_POST['player'];
        $result = \Kofradia\DB::get()->query("\n\t\t\tSELECT u_email, up_id, up_name, up_access_level, up_brom_expire\n\t\t\tFROM users_players JOIN users ON up_u_id = u_id\n\t\t\tWHERE up_id = {$up_id} AND up_brom_ff_id = {$this->ff->id} AND up_brom_expire > " . time() . " AND up_access_level != 0");
        $cost = $this->fam ? self::KICK_PLAYER_COST_FAMILIE : self::KICK_PLAYER_COST;
        $up = $result->fetch();
        if (!$up) {
            ess::$b->page->add_message("Fant ikke spilleren.", "error");
            redirect::handle();
        }
        // sett opp skjema
        $form = \Kofradia\Form::getByDomain("other", login::$user);
        // har vi bekreftet ønsket om å kaste ut en spiller?
        if (isset($_POST['confirm']) && $form->validateHashOrAlert(null, "Kast ut spiller fra bomberom")) {
            \Kofradia\DB::get()->beginTransaction();
            // forsøk å trekk fra pengene
            if (!$this->ff->bank(ff::BANK_BETALING, $cost, "Kaste ut spilleren [user id={$up['up_id']}] fra bomberommet")) {
                ess::$b->page->add_message("Det er ikke nok penger i " . ($this->fam ? "broderskapbanken" : "firmabanken") . ".", "error");
                \Kofradia\DB::get()->commit();
            } else {
                // finn en tilfeldig bydel å plassere spilleren
                $result = \Kofradia\DB::get()->query("SELECT id, name FROM bydeler WHERE active != 0 ORDER BY RAND() LIMIT 1");
                $b_id = $result->fetchColumn(0);
                // forsøk å trekk ut spilleren fra bomberommet
                $a = \Kofradia\DB::get()->exec("\n\t\t\t\t\tUPDATE users_players\n\t\t\t\t\tSET up_brom_expire = 0, up_b_id = {$b_id}\n\t\t\t\t\tWHERE up_id = {$up['up_id']} AND up_brom_ff_id = {$this->ff->id} AND up_brom_expire = {$up['up_brom_expire']} AND up_access_level != 0");
                // feilet?
                if ($a == 0) {
                    // avbryt transaksjon
                    \Kofradia\DB::get()->rollback();
                    ess::$b->page->add_message("Kunne ikke kaste ut spilleren fra bomberommet.", "error");
                } else {
                    // legg til hendelse hos spilleren
                    player::add_log_static("bomberom_kicked", login::$user->player->id . ":" . urlencode($this->ff->data['ff_name']) . ":{$up['up_brom_expire']}", $this->ff->id, $up['up_id']);
                    // send e-post til spilleren
                    $email = new email();
                    $email->text = 'Hei,

Din spiller ble kastet ut fra bomberommet av ' . ($this->fam ? 'broderskapet' : 'firmaet') . ' som styrer bomberommet.

--
www.kofradia.no';
                    $email->send($up['u_email'], "Kastet ut av bomberom");
                    // firmalogg
                    $this->ff->add_log("bomberom_kick", login::$user->player->id . ":{$up['up_id']}:{$up['up_brom_expire']}");
                    // logg
                    putlog("DF", "BOMBEROM: {$up['up_name']} ble kastet ut av bomberommet {$this->ff->data['ff_name']} av " . login::$user->player->data['up_name'] . " " . ess::$s['spath'] . "/min_side?up_id={$up['up_id']}");
                    ess::$b->page->add_message('Du kastet ut <user id="' . $up['up_id'] . '" /> fra bomberommet. ' . ($this->fam ? 'Broderskapet' : 'Firmaet') . ' betalte et gebyr på ' . game::format_cash($cost) . '.');
                    \Kofradia\DB::get()->commit();
                    redirect::handle();
                }
            }
        }
        ess::$b->page->add_title("Kaste ut spiller");
        // vis informasjon
        echo '
<div class="bg1_c xsmall">
	<h1 class="bg1">Kaste ut spiller fra bomberommet<span class="left2"></span><span class="right2"></span></h1>
	<div class="bg1">
		<p>Du er i ferd med å kaste ut ' . game::profile_link($up['up_id'], $up['up_name'], $up['up_access_level']) . ' fra bomberommet.</p>
		<p>Spilleren skal i utgangspunktet sitte i bomberommet til ' . ess::$b->date->get($up['up_brom_expire'])->format(date::FORMAT_SEC) . ' (' . game::counter($up['up_brom_expire'] - time()) . ' gjenstår).</p>
		<p>For å kaste ut spilleren må det betales en avgift på <b>' . game::format_cash($cost) . '</b> som betales fra ' . ($this->fam ? 'broderskapkontoen' : 'firmakontoen') . '.</p>';
        // har vi ikke nok penger i firmakontoen?
        if ($this->ff->data['ff_bank'] < $cost) {
            echo '
		<p>' . ($this->fam ? 'Broderskapet' : 'Firmaet') . ' har for øyeblikket kun ' . game::format_cash($this->ff->data['ff_bank']) . ' på konto, noe som ikke er nok. ' . ($this->ff->access(1) ? '<a href="' . ess::$s['relative_path'] . '/ff/banken?ff_id=' . $this->ff->id . '">Sett inn penger på ' . ($this->fam ? 'broderskapkontoen' : 'firmakontoen') . '</a>' : '<a href="' . ess::$s['relative_path'] . '/ff/panel?ff_id=' . $this->ff->id . '">Donér til ' . ($this->fam ? 'broderskapet' : 'firmaet') . '</a>') . ' først for å kunne kaste ut spilleren.</p>
		<p class="c"><a href="bomberom?ff_id=' . $this->ff->id . '">Tilbake</a></p>';
        } else {
            echo '
		<p>' . ($this->fam ? 'Broderskapet' : 'Firmaet') . ' har for øyeblikket ' . game::format_cash($this->ff->data['ff_bank']) . ' på konto.</p>
		<form action="" method="post">
			' . $form->getHTMLInput() . '
			<input type="hidden" name="sid" value="' . login::$info['ses_id'] . '" />
			<input type="hidden" name="player" value="' . $up['up_id'] . '" />
			<input type="hidden" name="kick" />
			<p class="c">' . show_sbutton("Bekreft, kast ut spilleren", 'name="confirm"') . ' <a href="bomberom?ff_id=' . $this->ff->id . '">Avbryt</a></p>
		</form>';
        }
        echo '
	</div>
</div>';
        $this->ff->load_page();
    }
开发者ID:Kuzat,项目名称:kofradia,代码行数:97,代码来源:bomberom.php

示例9: __construct

    /**
     * Sykehus
     */
    public function __construct(player $up = null, ff $ff)
    {
        parent::__construct($up);
        $this->ff = $ff;
        $show = $this->up && $this->ff->active;
        if ($show) {
            // i fengsel eller bomberom?
            if ($this->up->fengsel_require_no(false) || $this->up->bomberom_require_no(false)) {
                return;
            }
            // sett opp skjema
            $this->form = \Kofradia\Form::getByDomain("sykehus", login::$user);
            // utføre et alternativ?
            if (isset($_POST['sykehus'])) {
                $this->action();
            }
            // utføre sykebil
            if (isset($_POST['sykebil']) && $this->sykebil()) {
                return;
            }
        }
        // vis alternativene
        echo '
<div class="bg1_c xsmall">
	<h1 class="bg1">Sykehus<span class="left2"></span><span class="right2"></span></h1>
	<div class="bg1">
		<boxes />
		<p>Sykehus gir deg muligheten til å øke din energi slik at helsen din går mye fortere opp enn hva den ville gjort utenom. Energien kan ved hjelp av sykehus gå over 100 %.</p>';
        // ventetid?
        $wait = $this->calc_wait();
        if ($wait > 0) {
            echo '
		<p>Du må vente ' . game::counter($wait, true) . ' før du kan benytte deg av sykehus på nytt.</p>';
        } elseif ($show && $this->up->data['up_b_id'] != $this->ff->data['br_b_id']) {
            echo '
		<p>Du må befinne deg i samme bydel som sykehuset for å kunne benytte deg av det.</p>';
            // har vi lite nok energi til å ta sykebil?
            if ($this->up->get_energy_percent() < self::ENERGY_SYKEBIL_REQ) {
                echo '
		<div style="background-color: #533; padding: 1px 10px">
			<p>Du har svært lite energi. Hvis du føler du står i fare for å dø og ikke har nok energi for å reise via bydeler, kan du få en sykebil til å hente deg.</p>
			<p>Når du blir hentet av en sykebil, vil du bli fraktet til bydelen sykehuset befinner seg i uten å miste noe helse eller energi. Du vil deretter kunne utføre alternativene for å få energi.</p>
			<p>Ved å benytte seg av dette alternativet <b>må du ofre 25 % av din totale rank</b>.</p>
			<form action="" method="post">
				<p class="c">' . show_sbutton("Be om sykebil", 'name="sykebil"') . '</p>
			</form>
		</div>';
            }
        } elseif ($show) {
            // vis alternativene
            echo '
		<form action="" method="post">
			' . $this->form->getHTMLInput() . '
			<table class="table center">
				<thead>
					<tr>
						<th>Alternativ</th>
						<th>Pris</th>
					</tr>
				</thead>
				<tbody>';
            $i = 0;
            $last_id = ess::session_get("sykehus_last_id");
            foreach (self::$options as $id => $row) {
                echo '
					<tr class="box_handle' . (++$i % 2 == 0 ? ' color' : '') . '">
						<td><input type="radio" name="id" value="' . $id . '"' . ($last_id == $id ? ' checked="checked"' : '') . ' />' . htmlspecialchars($row['name']) . '</td>
						<td class="r">' . game::format_cash($row['price']) . '</td>
					</tr>';
            }
            echo '
				</tbody>
			</table>
			<p class="c">' . show_sbutton("Utfør handling", 'name="sykehus"') . '</p>
		</form>';
        }
        echo '
		<p class="c"><a href="' . ess::$s['relative_path'] . '/node/57">Mer informasjon om sykehus</a></p>
	</div>
</div>';
    }
开发者ID:Kuzat,项目名称:kofradia,代码行数:84,代码来源:index.php

示例10: page_donate_handle

    /**
     * Behandle donasjon
     */
    protected function page_donate_handle()
    {
        $amount = game::intval($_POST['donate']);
        $note = trim(postval("note"));
        // nostat?
        if (access::is_nostat()) {
            ess::$b->page->add_message("Du er nostat og har ikke tilgang til å donere til {$this->ff->type['refobj']}.", "error");
        } elseif ($amount < 0) {
            ess::$b->page->add_message("Beløpet kan ikke være negativt..", "error");
        } elseif ($amount < 15000) {
            ess::$b->page->add_message("Minstebeløp å donere er 15 000 kr.", "error");
        } else {
            // finn ut når vi donerte siste gang - kan ikke donere oftere enn en gang i timen
            $result = \Kofradia\DB::get()->query("SELECT ffbl_time FROM ff_bank_log WHERE ffbl_ff_id = {$this->ff->id} AND ffbl_type = 3 AND ffbl_up_id = " . login::$user->player->id . " ORDER BY ffbl_time DESC LIMIT 1");
            $last = $result->fetch();
            if ($last && $last['ffbl_time'] + 3600 > time()) {
                ess::$b->page->add_message("Du kan ikke donere oftere enn én gang per time. Du må vente " . game::counter($last['ffbl_time'] + 3600 - time()) . " før du kan donere på nytt.", "error");
            } elseif ($amount > login::$user->player->data['up_cash']) {
                ess::$b->page->add_message("Du har ikke nok penger på hånda til å donere " . game::format_cash($amount) . " til {$this->ff->type['refobj']}.", "error");
            } elseif (isset($_POST['approve']) && validate_sid(false)) {
                // forsøk å donere
                $a = \Kofradia\DB::get()->exec("UPDATE ff, users_players SET ff_bank = ff_bank + {$amount}, up_cash = up_cash - {$amount} WHERE ff_id = {$this->ff->id} AND up_id = " . login::$user->player->id . " AND up_cash >= {$amount}");
                // hadde ikke nok penger?
                if ($a == 0) {
                    ess::$b->page->add_message("Du har ikke nok penger på hånda til å donere " . game::format_cash($amount) . " til {$this->ff->type['refobj']}.", "error");
                } else {
                    // finn balanse
                    $result = \Kofradia\DB::get()->query("SELECT ff_bank FROM ff WHERE ff_id = {$this->ff->id}");
                    $balance = $result->fetchColumn(0);
                    // legg til logg
                    \Kofradia\DB::get()->exec("INSERT INTO ff_bank_log SET ffbl_ff_id = {$this->ff->id}, ffbl_type = 3, ffbl_amount = {$amount}, ffbl_up_id = " . login::$user->player->id . ", ffbl_time = " . time() . ", ffbl_balance = {$balance}, ffbl_note = " . \Kofradia\DB::quote($note));
                    // legg til i spillerinfo
                    \Kofradia\DB::get()->exec("UPDATE ff_members SET ffm_donate = ffm_donate + {$amount} WHERE ffm_up_id = " . login::$user->player->id . " AND ffm_ff_id = {$this->ff->id} AND ffm_status = 1");
                    ess::$b->page->add_message("Du donerte " . game::format_cash($amount) . " til {$this->ff->type['refobj']}.");
                    // legg til daglig stats
                    $this->ff->stats_update("money_in", $amount, true);
                    redirect::handle();
                }
            } elseif (!isset($_POST['skip'])) {
                ess::$b->page->add_title("Donér til {$this->ff->type['refobj']}");
                // vis skjema for godkjenning
                echo '
<!-- donasjon -->
<div class="section w200">
	<h2>Donér til ' . $this->ff->type['refobj'] . '</h2>
	<p>Du er i ferd med å donére til ' . $this->ff->type['refobj'] . '.</p>
	<p>Beløp: ' . game::format_cash($amount) . '</p>
	<p>Melding/notat: ' . game::format_data($note, "bb-opt", "Uten melding") . '</p>
	<form action="" method="post">
		<input type="hidden" name="donate" value="' . $amount . '" />
		<input type="hidden" name="note" value="' . htmlspecialchars($note) . '" />
		<input type="hidden" name="sid" value="' . login::$info['ses_id'] . '" />
		<p class="c">
			' . show_sbutton("Utfør donasjon", 'name="approve"') . '
			' . show_sbutton("Avbryt", 'name="skip"') . '
		</p>
	</form>
</div>';
                $this->ff->load_page();
            }
        }
    }
开发者ID:Kuzat,项目名称:kofradia,代码行数:65,代码来源:panel.php

示例11: page_info


//.........这里部分代码省略.........
						<dl class="dd_right">
							<dt>Våpen</dt>
							<dd>' . htmlspecialchars(page_min_side::$active_player->weapon->data['name']) . '</dd>
							<dt>Kulekapasitet</dt>
							<dd>' . page_min_side::$active_player->weapon->data['bullets'] . '</dd>
							<dt>Antall kuler i våpenet</dt>
							<dd>' . page_min_side::$active_player->data['up_weapon_bullets'] . '</dd>
							<dt>Våpentrening</dt>
							<dd>' . game::format_number(page_min_side::$active_player->data['up_weapon_training'] * 100, 2) . ' %</dd>
						</dl>';
        }
        echo '
					</div>
				</div>
				<div class="bg1_c">
					<h1 class="bg1">Beskyttelse<span class="left2"></span><span class="right2"></span></h1>
					<div class="bg1">';
        if (!page_min_side::$active_player->protection->data) {
            echo '
						<p>Du har ingen beskyttelse. Du kjøper beskyttelse hos et våpen og beskyttelse-firma via bydeler.</p>';
        } else {
            echo '
						<dl class="dd_right">
							<dt>Beskyttelse</dt>
							<dd>' . htmlspecialchars(page_min_side::$active_player->protection->data['name']) . '</dd>
							<dt>Status</dt>
							<dd>' . game::format_number(page_min_side::$active_player->data['up_protection_state'] * 100, 2) . ' %</dd>
						</dl>';
        }
        // i bomberom?
        $bomberom_wait = page_min_side::$active_player->bomberom_wait();
        if ($bomberom_wait > 0) {
            echo '
						<p>Befinner seg i <a href="' . ess::$s['relative_path'] . '/ff/?ff_id=' . page_min_side::$active_player->data['up_brom_ff_id'] . '">bomberom</a> til ' . ess::$b->date->get(page_min_side::$active_player->data['up_brom_expire'])->format() . ' (' . game::counter($bomberom_wait) . ' gjenstår).</p>';
        }
        echo '
					</div>
				</div>';
        echo '
			</div>
		</div>
		<div class="col_w right">
			<div class="col">
				<div class="bg1_c">
					<h1 class="bg1">Statistikk<span class="left2"></span><span class="right2"></span></h1>
					<div class="bg1">
						<p class="minside_stats_h">Generelt</p>
						<dl class="dd_right minside_stats_d">
							<dt>Sidevisninger</dt>
							<dd>' . game::format_number(page_min_side::$active_player->data['up_hits']) . '</dd>
							<dt>Videresendinger</dt>
							<dd>' . game::format_number(page_min_side::$active_player->data['up_hits_redirect']) . '</dd>
						</dl>
						<p class="minside_stats_h">Profil</p>
						<dl class="dd_right minside_stats_d">
							<dt>Visninger i profilen</dt>
							<dd>' . game::format_number(page_min_side::$active_player->data['up_profile_hits']) . '</dd>
						</dl>
						<p class="minside_stats_h">Spiller</p>
						<dl class="dd_right minside_stats_d">
							<dt>Ant. ganger i fengsel</dt>
							<dd>' . game::format_number(page_min_side::$active_player->data['up_fengsel_num']) . '</dd>
							<dt>Antall utbrytninger</dt>
							<dd>' . game::format_number(page_min_side::$active_player->data['up_fengsel_num_out_success']) . ' / ' . game::format_number(page_min_side::$active_player->data['up_fengsel_num_out_tries']) . '</dd>
							<dt>Antall ganger vunnet i lotto</dt>
							<dd><a href="lotto_vinn' . (page_min_side::$active_user->id != login::$user->id ? '?up_id=' . page_min_side::$active_player->id : '') . '">' . game::format_number($lotto_vinn) . '</a></dd>
开发者ID:Kuzat,项目名称:kofradia,代码行数:67,代码来源:min_side_player.php

示例12: biltyveri_show

    /**
     * Vis biltyveri
     */
    protected function biltyveri_show()
    {
        ess::$b->page->add_title("Biltyveri");
        // kontroller ranken vi må ha for å utføre biltyveri
        $this->check_rank();
        // kontroller energi
        $this->gta->up->energy_require(gta::ENERGY_BILTYVERI * 1.3);
        // legg til 30 % på kravet
        // anti-bot
        $this->antibot = antibot::get("biltyveri", 10);
        $this->antibot->check_required(ess::$s['rpath'] . '/gta');
        // skjema
        $this->form = \Kofradia\Form::getByDomain("biltyveri", login::$user);
        // hent inn alternativene
        $this->gta->load_options();
        // ønsker vi å utføre biltyveri?
        if (isset($_POST['option_id'])) {
            $this->biltyveri_utfor();
        }
        // kontroller ventetid
        $wait = $this->gta->calc_wait();
        $wait = $wait[0];
        echo '
<div class="col2_w" style="margin: 35px 0">
	<div class="col_w left" style="width: 64%">
		<div class="col">
<div class="bg1_c center" style="width: 350px">
	<h1 class="bg1">Biltyveri<span class="left2"></span><span class="right2"></span></h1>
	<p class="h_right"><a href="&rpath;/node/20">Hjelp</a></p>
	<div class="bg1">
		';
        // har vi ikke garasje i denne bydelen?
        $bydeler = $this->gta->get_bydeler_info();
        if (!$bydeler[$this->gta->up->data['up_b_id']]['ff_id']) {
            echo '
		<p>Du må ha en garasje i denne bydelen før du kan forsøke å utføre biltyveri.</p>';
        } elseif ($bydeler[$this->gta->up->data['up_b_id']]['garage_free'] == 0) {
            $msg = ess::$b->page->messages->getMessageByName("gta_result");
            if ($msg) {
                echo '
		<div class="p c">' . $msg->content . '</div>';
            }
            echo '
		<p>Det er ikke plass til flere kjøretøy i garasjen din. Oppgrader garasje, selg eller flytt biler for å kunne utføre biltyveri.</p>';
        } elseif (count($this->gta->options) == 0) {
            echo '
		<p>Det er ingen mulighet for å stjele biler i denne bydelen.</p>';
        } else {
            $id = reset($this->gta->options);
            $id = $id['id'];
            $rank = $this->gta->up->rank['need_points'] == 0 ? game::format_number(round(gta::RANK_BILTYVERI / $this->gta->up->rank['points'], 5) * 100, 4) : game::format_number(round(gta::RANK_BILTYVERI / $this->gta->up->rank['need_points'], 5) * 100, 3);
            echo '
		<form action="" method="post" onsubmit="noSubmit(this)">
			' . $this->form->getHTMLInput() . '
			<table class="table game center tablemt" style="width: 100%">
				<thead>
					<tr>
						<th>Navn</th>
						<th>Sjanse</th>
						<th>Forsøk</th>
						<th>Vellykkede</th>
					</tr>
				</thead>
				<tbody>';
            // vis alternativene
            $valgt = login::data_get("biltyveri_alternativ_" . login::$user->player->data['up_b_id']);
            $i = 0;
            foreach ($this->gta->options as $option) {
                echo '
					<tr class="box_handle' . (++$i % 2 == 0 ? ' color' : '') . '">
						<td><input type="radio" name="option_id" value="' . $option['id'] . '"' . ($option['id'] == $valgt ? ' checked="checked"' : '') . ' />' . htmlspecialchars($option['name']) . '</td>
						<td class="r">' . game::format_number($option['percent']) . ' %</td>
						<td class="r">' . game::format_number($option['count']) . '</td>
						<td class="r">' . game::format_number($option['success']) . ' (' . ($option['count'] == 0 ? '0,0' : game::format_number($option['success'] / $option['count'] * 100, 1)) . ' %)</td>
					</tr>';
            }
            echo '
				</tbody>
			</table>';
            $msg = ess::$b->page->messages->getMessageByName("gta_result");
            if ($msg) {
                echo '
			<div class="p c">' . $msg->content . '</div>';
            }
            echo $wait > 0 ? '
			<p class="c">Du må vente ' . game::counter($wait, true) . ' før du kan utføre biltyveri igjen.</p>' : '
			<p class="c">' . show_sbutton("Utfør handling") . '</p>';
            echo '
		</form>';
        }
        echo '
	</div>
</div>
		</div>
	</div>
	<div class="col_w right" style="width: 36%">
		<div class="col">
//.........这里部分代码省略.........
开发者ID:Kuzat,项目名称:kofradia,代码行数:101,代码来源:gta.php

示例13: time

        if (isset(login::$user->player->oppdrag->new[$row['o_id']])) {
            echo '
			<p><b>Nytt oppdrag!</b></p>';
        }
        // ikke mulig å utføre enda?
        if ($row['uo_locked'] != 0) {
            echo '
			<div class="p">' . login::$user->player->oppdrag->get_description($row['o_id']) . '</div>';
            // status
            echo login::$user->player->oppdrag->status($row['o_id']);
        } else {
            echo '
			<div class="p">' . login::$user->player->oppdrag->get_description($row['o_id']) . '</div>';
            // akkurat forsøkt -- mislykte -- må vente
            if ($row['uo_last_state'] == 0 && $row['uo_last_time'] + $row['o_retry_wait'] > time()) {
                $wait = $row['uo_last_time'] + $row['o_retry_wait'] - time();
                echo '
			<p>Du mislyktes oppdraget forrige gang du prøvde og må vente ' . game::counter($wait, true) . ' før du kan prøve igjen.</p>';
            } else {
                echo '
			<p><a href="oppdrag?o_id=' . $row['o_id'] . '" class="button">Start oppdrag &raquo;</a></p>';
            }
        }
        echo '
		</div>';
    }
}
echo '
	</div>
</div>';
$_base->page->load();
开发者ID:Kuzat,项目名称:kofradia,代码行数:31,代码来源:oppdrag.php

示例14: add_topic_error_wait

 /**
  * Må vente før ny forumtråd kan legges til
  * @param integer $wait ventetid
  */
 protected function add_topic_error_wait($wait)
 {
     \ess::$b->page->add_message("Du må vente " . \game::counter($wait) . " før du kan opprette ny forumtråd.", "error");
 }
开发者ID:Kuzat,项目名称:kofradia,代码行数:8,代码来源:Category.php

示例15: lodd_kjop

 /**
  * Kjøpe lodd
  */
 protected function lodd_kjop()
 {
     // nostat?
     if (access::is_nostat() && !access::has("sadmin") && MAIN_SERVER) {
         ess::$b->page->add_message("Du har ikke tilgang til å spille lotto. (NoStat)", "error");
         redirect::handle();
     }
     if (!$this->form->validateHashOrAlert(null, ($this->last > 0 ? "Previous=" . game::timespan($this->last, game::TIME_ABS | game::TIME_SHORT | game::TIME_NOBOLD) . ";" : "First;") . ($this->active ? "Active;" : "NOT-ACTIVE;") . ($this->wait ? "%c11Ventetid=" . game::timespan($this->wait, game::TIME_SHORT | game::TIME_NOBOLD) . "%c" : "%c9No-wait%c"))) {
         return;
     }
     if (isset($_POST['b'])) {
         global $__server;
         putlog("ABUSE", "Trolig bot: " . login::$user->player->data['up_name'] . " - Skjult skjema sendt (Lotto) SID=" . login::$info['ses_id'] . " " . $__server['path'] . "/min_side?up_id=" . login::$user->player->id);
     }
     // ikke aktiv?
     if (!$this->active) {
         ess::$b->page->add_message("Lottoen er ikke aktiv for øyeblikket!", "error");
         redirect::handle();
     }
     // ventetid?
     if ($this->wait > 0) {
         ess::$b->page->add_message('Du må vente ' . game::counter($this->wait, true) . ' før du kan kjøpe nye lodd!', "error");
         redirect::handle();
     }
     $lodd = intval($_POST['lodd']);
     // ikke gyldig?
     if ($lodd < 1) {
         ess::$b->page->add_message("Du må minimum kjøpe ett lodd!", "error");
         redirect::handle();
     }
     // for mange lodd?
     if ($lodd > lotto::$lodd_maks_om_gangen) {
         ess::$b->page->add_message("Du kan maks kjøpe " . game::format_number(lotto::$lodd_maks_om_gangen) . " lodd på en gang!", "error");
         redirect::handle();
     }
     // kan vi kjøpe så mange lodd?
     if ($lodd > lotto::$lodd_maks - $this->info['antall_lodd']) {
         ess::$b->page->add_message("Du kan ikke kjøpe så mange lodd!", "error");
         redirect::handle();
     }
     $lodd_price = lotto::get_lodd_price();
     $cost = $lodd * $lodd_price;
     // trekk fra pengene
     $a = \Kofradia\DB::get()->exec("UPDATE users_players SET up_cash = up_cash - ({$lodd} * " . $lodd_price . ") WHERE up_id = " . login::$user->player->id . " AND up_cash >= ({$lodd} * " . $lodd_price . ")");
     if ($a == 0) {
         ess::$b->page->add_message("Du har ikke nok penger på hånda!", "error");
         redirect::handle();
     }
     // gi loddene til brukeren
     $q = array();
     $time = time();
     for ($i = 0; $i < $lodd; $i++) {
         $q[] = "(" . login::$user->player->id . ", {$time})";
     }
     \Kofradia\DB::get()->exec("INSERT INTO lotto (l_up_id, time) VALUES " . implode(",", $q));
     // energi
     login::$user->player->energy_use(self::ENERGY);
     ess::$b->page->add_message("Du har kjøpt <b>" . game::format_number($lodd) . "</b> lottolodd for <b>" . game::format_cash($lodd * $lodd_price) . "</b>!");
     $this->antibot->increase_counter();
     redirect::handle();
 }
开发者ID:Kuzat,项目名称:kofradia,代码行数:64,代码来源:lotto.php


注:本文中的game::counter方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。