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
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' => 40,
|
|
'mp' => 125,
|
|
'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'));
|
|
|