/** * Remove items from the clan bank. * @param SR_Clan $clan * @param string $itemname * @param int $amt * @param int $weight * @return boolean */ public function pop(SR_Clan $clan, $amt, $weight) { if ($this->getAmt() > $amt) { if (false === $this->increase('sr4cb_iamt', -$amt)) { return false; } } else { if (false === $this->delete()) { return false; } } return $clan->increase('sr4cl_storage', -$weight); }
public static function onClanMessage(SR_Player $player, array $args) { if (false === ($clan = SR_Clan::getByPlayer($player))) { $player->msg('1019'); // $player->message('You are not in a clan, chummer.'); return false; } if ('' === ($message = implode(' ', $args))) { $player->message(Shadowhelp::getHelp($player, 'clan_message')); return false; } foreach (SR_ClanMembers::getOnlineMembers($clan->getID()) as $member) { $member instanceof SR_Player; $member->message($message); } return SR_ClanHistory::onMessage($clan, $player, $message); }
public static function onAddStorage(SR_Clan $clan, SR_Player $player) { $event = new self(array('sr4ch_id' => '0', 'sr4ch_cid' => $clan->getID(), 'sr4ch_time' => Shadowrun4::getTime(), 'sr4ch_pname' => $player->getName(), 'sr4ch_action' => self::ADD_STORAGE, 'sr4ch_iname' => NULL, 'sr4ch_amt' => $clan->getMaxStorage())); return self::insertAndSend($clan, $event); }
/** * Show one history page for your clan. * @param SR_Player $player * @param int $page */ private static function showHistoryPage(SR_Player $player, $page) { // $bot = Shadowrap::instance($player); if (false === ($clan = SR_Clan::getByPlayer($player))) { return self::rply($player, '1019'); // $bot->reply('You don\'t belong to a clan yet.'); return false; } $ipp = 5; $table = GDO::table('SR_ClanHistory'); $where = 'sr4ch_cid=' . $clan->getID(); $nItems = $table->countRows($where); $nPages = GWF_PageMenu::getPagecount($ipp, $nItems); if ($page > $nPages) { return self::rply($player, '1009'); // $bot->reply('This page is empty.'); return false; } $from = GWF_PageMenu::getFrom($page, $ipp); if (false === ($result = $table->selectAll('sr4ch_time,sr4ch_pname,sr4ch_action,sr4ch_iname,sr4ch_amt', $where, 'sr4ch_time DESC', NULL, $ipp, $from, GDO::ARRAY_N))) { $player->message('DB ERROR'); // $bot->reply('DB ERROR'); return false; } $b = 0; $out = array(); foreach ($result as $row) { $b = 1 - $b; $b2 = $b === 0 ? '' : ""; $out[] = $b2 . SR_ClanHistory::getHistMessage($player, $row[0], $row[1], $row[2], $row[3], $row[4]) . $b2; } return self::rply($player, '5041', array($page, $nPages, implode(' ', $out))); // $message = sprintf('ClanHistory page %d/%d: %s', $page, $nPages, implode(' ', $out)); // return $bot->reply($message); }