You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

309 lines
5.2 KiB

<?php
/*
* Created on 02.05.2014
*
* @copyright (c) 2014 animegame.eu
* @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public Licence
*
*/
#include_once(ROOT_PATH.'/include/event.inc.php');
$GLOBALS['TMP_DB_TABLE_RACE_TYPE']=array(
array(
'name' => 'Onepiece',
'id' => 1,
'gm_only' => false,
),
array(
'name' => 'Dragonball',
'id' => 2,
'gm_only' => false,
),
array(
'name' => 'NPC',
'id' => 3,
'gm_only' => true,
),
);
// Dieses Array ist zum simulieren der Datenbank da!
$GLOBALS['TMP_DB_TABLE_RACES']=array(
array(
'name' => 'Mensch',
'type' => 2,
'id' => 1,
'hp' => 150,
'mp' => 30,
'str' => 15,
'def' => 9,
'spd' => 13,
'lck' => 4,
'stm' => 8,
'special' => false
),
array(
'name' => 'Saiyajin',
'type' => 2,
'id' => 2,
'hp' => 120,
'mp' => 30,
'str' => 18,
'def' => 10,
'spd' => 9,
'lck' => 5,
'stm' => 10,
'special' => false
),
array(
'name' => 'Dämon',
'type' => 2,
'id' => 3,
'hp' => 160,
'mp' => 50,
'str' => 8,
'def' => 9,
'spd' => 18,
'lck' => 4,
'stm' => 5,
'special' => false
),
array(
'name' => 'Mutant',
'type' => 2,
'id' => 4,
'hp' => 180,
'mp' => 15,
'str' => 13,
'def' => 9,
'spd' => 18,
'lck' => 4,
'stm' => 5,
'special' => false
),
array(
'name' => 'Cyborg',
'type' => 2,
'id' => 5,
'hp' => 250,
'mp' => 20,
'str' => 11,
'def' => 30,
'spd' => 0,
'lck' => 0,
'stm' => 0,
'special' => false
),
array(
'name' => 'Namekianer',
'type' => 2,
'id' => 6,
'hp' => 100,
'mp' => 10,
'str' => 18,
'def' => 10,
'spd' => 14,
'lck' => 6,
'stm' => 10,
'special' => false
),
array(
'name' => 'Tsufurujin',
'type' => 2,
'id' => 13,
'hp' => 50,
'mp' => 120,
'str' => 0,
'def' => 0,
'spd' => 11,
'lck' => 30,
'stm' => 0,
'special' => false,
),
// Start 'One Piece'
array(
'name' => 'Pirat',
'type' => 1,
'id' => 7,
'hp' => 100,
'mp' => 25,
'str' => 20,
'def' => 10,
'spd' => 15,
'lck' => 3,
'stm' => 7,
'special' => false
),
// In-Between Special chars
array(
'name' => 'Shichibukai',
'type' => 1,
'id' => 8,
'hp' => 1000,
'mp' => 150,
'str' => 100,
'def' => 100,
'spd' => 100,
'lck' => 100,
'stm' => 100,
'tp' => 500,
'special' => true
),
array(
'name' => 'Kaioshin',
'type' => 2,
'id' => 9,
'hp' => 1000,
'mp' => 150,
'str' => 100,
'def' => 100,
'spd' => 100,
'lck' => 100,
'stm' => 100,
'tp' => 500,
'special' => true
),
// Continue 'One Piece'
array(
'name' => 'Schwertkämpfer',
'type' => 1,
'id' => 10,
'hp' => 100,
'mp' => 25,
'str' => 25,
'def' => 10,
'spd' => 10,
'lck' => 2,
'stm' => 8,
'special' => false
),
array(
'name' => 'Grandline Maschine',
'type' => 1,
'id' => 11,
'hp' => 400,
'mp' => 5,
'str' => 5,
'def' => 5,
'spd' => 5,
'lck' => 0,
'stm' => 10,
'special' => false
),
// NPC chars
array(
'name' => 'NPC',
'type' => 3,
'id' => 12,
'hp' => 0,
'mp' => 0,
'str' => 0,
'def' => 0,
'spd' => 0,
'lck' => 0,
'stm' => 0,
'special' => true
),
);
// now sort the arrays
// Dieses Array ist dafuer da, dass nicht unnötig viele SQL-Abfragen gemacht werden!
// Fehlgriff im Design, aber solange wir nichts Klassenbasiert machen, gehts nicht anders
$GLOBALS['char_buffered_races'] = array ();
$GLOBALS['char_buffered_race_types'] = array();
function getRassen() {
return getRaces();
}
/**
* Diese Funktion gibt ein array mit allen rassen aus 'id' => array('name', 'type', ...);
*/
function getRaces() {
if(count($GLOBALS['char_buffered_races']) == 0) {
// FIXME: This is a simulated SQL Request!
foreach($GLOBALS['TMP_DB_TABLE_RACES'] as $race) {
$GLOBALS['char_buffered_races'][$race['id']] = $race;
}
}
return $GLOBALS['char_buffered_races'];
}
function getRassenTypeMapping() {
return getRaceTypes();
}
function getRaceTypes(){
if(count($GLOBALS['char_buffered_race_types']) == 0) {
foreach($GLOBALS['TMP_DB_TABLE_RACE_TYPE'] as $racetype) {
$GLOBALS['char_buffered_race_types'][$racetype['id']] = $racetype;
}
}
return $GLOBALS['char_buffered_race_types'];
}
function getRaceById($id) {
$races = getRassen();
return $races[$id];
}
function getRaceByName($name) {
// TODO: Improve performance for this
$races = getRaces();
foreach($races as $race) {
if($race['name'] == $name) {
return $race;
}
}
return NULL;
}
function getRacesByType($type) {
$races = getRaces();
$result = array();
foreach($races as $race) {
if($race['type'] == $type['id']) {
$result[] = $race;
}
}
return $result;
}
function getRaceTypeById($id) {
$types = getRaceTypes();
return $types[$id];
}
function getRaceTypeName($name) {
$types = getRaceTypes();
foreach($types as $type) {
if($type['name'] == $name) {
return $type;
}
}
return NULL;
}
function getSpecialRaceIds() {
$races = getRaces();
$result = array();
foreach($races as $race) {
if($race['special']) {
$result[] = $race;
}
}
return $result;
}
#print_r(getRassen());
#print_r(getRaceById(1));
#print_r(getRaceByName('Dämon'));