示例#1
0
function artefact_getList($caveID, $ownCaves)
{
    global $template;
    $template->setFile('artefactlist.tmpl');
    //get artefacts
    $artefacts = getArtefactList();
    // get moving artefacts
    $movements = artefact_getArtefactMovements();
    $ownArtefactsList = array();
    $otherArtefactsList = array();
    $movedArtefactsList = array();
    foreach ($artefacts as $artefact) {
        // eigenes Artefakt
        if (isset($ownCaves[$artefact['caveID']])) {
            switch ($artefact['initiated']) {
                case ARTEFACT_UNINITIATED:
                    if ($artefact['caveID'] == $caveID) {
                        $artefact['initiation_possible'] = array('artefactID' => $artefact['artefactID']);
                    } else {
                        $artefact['initiation_not_possible'] = array('status' => _('uneingeweiht'));
                    }
                    break;
                case ARTEFACT_INITIATING:
                    $artefact['initiation_not_possible'] = array('status' => _('wird gerade eingeweiht'));
                    break;
                case ARTEFACT_INITIATED:
                    $artefact['initiation_not_possible'] = array('status' => _('eingeweiht'));
                    break;
                default:
                    $artefact['initiation_not_possible'] = array('status' => _('Fehler'));
                    break;
            }
            $ownArtefactsList[] = $artefact;
            // fremdes Artefakt
        } else {
            // Berechtigung prüfen
            // ***** kein Gott! *****************************************************
            if ($_SESSION['player']->tribe != GOD_ALLY) {
                // Artefakt liegt in einer Höhle
                if ($artefact['caveID'] != 0) {
                    // A. in Einöden und von Göttern sind Tabu
                    if ($artefact['playerID'] == 0 || $artefact['tribe'] == GOD_ALLY) {
                        continue;
                    }
                    $artefact['isOwnArtefact'] = false;
                    $otherArtefactsList[] = $artefact;
                } else {
                    // A. wird bewegt?
                    $move = isset($movements[$artefact['artefactID']]) ? $movements[$artefact['artefactID']] : false;
                    // nein. Limbusartefakt!
                    if (!$move) {
                        continue;
                    }
                    // A. wird bewegt!
                    $artefact['showEndTime'] = true;
                    $artefact += $move;
                    $movedArtefactsList[] = $artefact;
                }
            } else {
                // Artefakt liegt in einer Höhle
                if ($artefact['caveID'] != 0) {
                    // A. liegt in Einöde.
                    if ($artefact['playerID'] == 0) {
                        $artefact['hideArtefact'] = true;
                        $otherArtefactsList[] = $artefact;
                    } else {
                        $artefact['isOwnArtefact'] = false;
                        $otherArtefactsList[] = $artefact;
                    }
                } else {
                    // A. wird bewegt?
                    $move = isset($movements[$artefact['artefactID']]) ? $movements[$artefact['artefactID']] : false;
                    // nein. Limbusartefakt!
                    if (!$move) {
                        $artefact['isLimbusArtefact'] = true;
                    } else {
                        $artefact['showEndTime'] = true;
                        $artefact += $move;
                        $movedArtefactsList[] = $artefact;
                    }
                }
            }
            // Gott
        }
        // fremdes Artefakt
    }
    // foreach
    $template->addVars(array('ownArtefactsList' => $ownArtefactsList, 'otherArtefactsList' => $otherArtefactsList, 'movedArtefactsList' => $movedArtefactsList));
}
示例#2
0
function artefact_getList($caveID, $myCaves)
{
    global $params, $config;
    $template = tmpl_open($params->SESSION->player->getTemplatePath() . 'artefactlist.ihtml');
    $artefacts = getArtefactList();
    // get moving artefacts
    $movements = artefact_getArtefactMovements();
    foreach ($artefacts as $value) {
        // eigenes Artefakt
        if (array_key_exists($value['caveID'], $myCaves)) {
            $context = 'ARTEFACT_OWN';
            $value['alternate'] = ++$alternate_own % 2 ? "alternate" : "";
            switch ($value['initiated']) {
                case ARTEFACT_UNINITIATED:
                    if ($value['caveID'] == $caveID) {
                        $value['INITIATION_POSSIBLE'] = array('modus_artefact_detail' => ARTEFACT_DETAIL, 'artefactID' => $value['artefactID']);
                    } else {
                        $value['INITIATION_NOT_POSSIBLE'] = array('status' => _('uneingeweiht'));
                    }
                    break;
                case ARTEFACT_INITIATING:
                    $value['INITIATION_NOT_POSSIBLE'] = array('status' => _('wird gerade eingeweiht'));
                    break;
                case ARTEFACT_INITIATED:
                    $value['INITIATION_NOT_POSSIBLE'] = array('status' => _('eingeweiht'));
                    break;
                default:
                    $value['INITIATION_NOT_POSSIBLE'] = array('status' => _('Fehler'));
            }
            // fremdes Artefakt
        } else {
            // Berechtigung prüfen
            // ***** kein Gott! *****************************************************
            if ($params->SESSION->player->tribe != GOD_ALLY) {
                // Artefakt liegt in einer Höhle
                if ($value['caveID'] != 0) {
                    // A. in Einöden und von Göttern sind Tabu
                    if ($value['playerID'] == 0 || $value['tribe'] == GOD_ALLY) {
                        continue;
                    }
                    $context = 'ARTEFACT_OTHER';
                    $value['alternate'] = ++$alternate_other % 2 ? "alternate" : "";
                } else {
                    // A. wird bewegt?
                    $move = $movements[$value['artefactID']];
                    // nein. Limbusartefakt!
                    if (!$move) {
                        continue;
                    }
                    // A. wird bewegt!
                    $context = 'ARTEFACT_MOVING_ETA';
                    $value += $move;
                    $value['alternate'] = ++$alternate_moving % 2 ? "alternate" : "";
                }
            } else {
                // Artefakt liegt in einer Höhle
                if ($value['caveID'] != 0) {
                    // A. liegt in Einöde.
                    if ($value['playerID'] == 0) {
                        $context = 'ARTEFACT_HIDDEN';
                        $value['alternate'] = ++$alternate_hidden % 2 ? "alternate" : "";
                    } else {
                        $context = 'ARTEFACT_OTHER';
                        $value['alternate'] = ++$alternate_other % 2 ? "alternate" : "";
                    }
                } else {
                    // A. wird bewegt?
                    $move = $movements[$value['artefactID']];
                    // nein. Limbusartefakt!
                    if (!$move) {
                        $context = 'ARTEFACT_LIMBUS';
                        $value['alternate'] = ++$alternate_limbus % 2 ? "alternate" : "";
                    } else {
                        $context = 'ARTEFACT_MOVING_ETA';
                        $value += $move;
                        $value['alternate'] = ++$alternate_moving % 2 ? "alternate" : "";
                    }
                }
            }
            // Gott
        }
        // fremdes Artefakt
        $value['modus_artefact_detail'] = ARTEFACT_DETAIL;
        $value['modus_map_detail'] = MAP_DETAIL;
        $value['modus_player_detail'] = PLAYER_DETAIL;
        $value['modus_tribe_detail'] = TRIBE_DETAIL;
        tmpl_iterate($template, $context . '/ARTEFACT');
        tmpl_set($template, $context . '/ARTEFACT', $value);
    }
    return tmpl_parse($template);
}