Files
core/hwe/func_message.php
T

52 lines
1.4 KiB
PHP

<?php
namespace sammo;
function getMailboxList(){
$generalNations = [];
foreach(DB::db()->query('select `no`, `name`, `nation`, `officer_level`, `npc`, `permission`, `penalty` from `general` where `npc` < 2') as $general)
{
[$generalID, $generalName, $nationID, $officerLevel, $npc] = [$general['no'], $general['name'], $general['nation'], $general['officer_level'], $general['npc']];
if(!isset($generalNations[$nationID])){
$generalNations[$nationID] = [];
}
$obj = [$generalID, $generalName, 0];
$permission = checkSecretPermission($general, false);
if($officerLevel == 12){
$obj[2] |= 1;
}
if($npc == 1){
$obj[2] |= 2;
}
if($permission == 4){
$obj[2] |= 4;
}
$generalNations[$nationID][] = $obj;
}
$result = array_map(function($nation) use ($generalNations) {
$nationID = $nation['nation'];
$mailbox = $nationID + Message::MAILBOX_NATIONAL;
$nationName = $nation['name'];
$color = $nation['color'];
$generals = Util::array_get($generalNations[$nationID], []);
return [
"mailbox"=>$mailbox,
"name"=>$nationName,
"color"=>$color,
"general"=>$generals,
];
}, array_merge([getNationStaticInfo(0)], getAllNationStaticInfo()));
return $result;
}