diff --git a/mojotrollz/api/char/charcreation.php b/mojotrollz/api/char/charcreation.php index 994ce9f..d5654e4 100644 --- a/mojotrollz/api/char/charcreation.php +++ b/mojotrollz/api/char/charcreation.php @@ -2,7 +2,7 @@ class charcreation { const DEFAULT_CHAR_NAME = 'Charactername'; const DEFAULT_CHAR_GENDER = 'default'; - const DEFAULT_CHAR_RACE = 'default'; + const DEFAULT_CHAR_RACE = 0; const DEFAULT_CHAR_CLASS = 0; const MOJO_CC_SESSIONKEY = 'mojo_charcreation'; const DEFAULT_CHAR_APPEARANCE = 1; @@ -38,14 +38,14 @@ class charcreation { public static function checkClassRace($class,$race){ switch($race){ - case 'human': return in_array($class, array(player_classes::WARRIOR, player_classes::ROGUE, player_classes::PRIEST, player_classes::MAGE, player_classes::WARLOCK, player_classes::PALADIN)); - case 'ork': return in_array($class, array(player_classes::WARRIOR, player_classes::HUNTER, player_classes::SHAMAN, player_classes::ROGUE, player_classes::WARLOCK)); - case 'dwarf': return in_array($class, array(player_classes::WARRIOR, player_classes::HUNTER, player_classes::ROGUE, player_classes::PRIEST, player_classes::PALADIN)); - case 'scorge': return in_array($class, array(player_classes::WARRIOR, player_classes::ROGUE, player_classes::PRIEST, player_classes::MAGE, player_classes::WARLOCK)); - case 'nightelf': return in_array($class,array(player_classes::WARRIOR, player_classes::HUNTER, player_classes::ROGUE, player_classes::PRIEST, player_classes::DRUID)); - case 'tauren': return in_array($class, array(player_classes::WARRIOR, player_classes::HUNTER, player_classes::SHAMAN, player_classes::DRUID)); - case 'gnome': return in_array($class, array(player_classes::WARRIOR, player_classes::ROGUE, player_classes::MAGE, player_classes::WARLOCK)); - case 'troll': return in_array($class, array(player_classes::WARRIOR, player_classes::HUNTER, player_classes::SHAMAN, player_classes::ROGUE, player_classes::PRIEST, player_classes::MAGE)); + case player_races::HUMAN : return in_array($class, array(player_classes::WARRIOR, player_classes::ROGUE, player_classes::PRIEST, player_classes::MAGE, player_classes::WARLOCK, player_classes::PALADIN)); + case player_races::ORK: return in_array($class, array(player_classes::WARRIOR, player_classes::HUNTER, player_classes::SHAMAN, player_classes::ROGUE, player_classes::WARLOCK)); + case player_races::DWARF: return in_array($class, array(player_classes::WARRIOR, player_classes::HUNTER, player_classes::ROGUE, player_classes::PRIEST, player_classes::PALADIN)); + case player_races::SCOURGE: return in_array($class, array(player_classes::WARRIOR, player_classes::ROGUE, player_classes::PRIEST, player_classes::MAGE, player_classes::WARLOCK)); + case player_races::NIGHTELF: return in_array($class,array(player_classes::WARRIOR, player_classes::HUNTER, player_classes::ROGUE, player_classes::PRIEST, player_classes::DRUID)); + case player_races::TAUREN: return in_array($class, array(player_classes::WARRIOR, player_classes::HUNTER, player_classes::SHAMAN, player_classes::DRUID)); + case player_races::GNOME: return in_array($class, array(player_classes::WARRIOR, player_classes::ROGUE, player_classes::MAGE, player_classes::WARLOCK)); + case player_races::TROLL: return in_array($class, array(player_classes::WARRIOR, player_classes::HUNTER, player_classes::SHAMAN, player_classes::ROGUE, player_classes::PRIEST, player_classes::MAGE)); default: return false; } } diff --git a/mojotrollz/api/char/equipment.php b/mojotrollz/api/char/equipment.php index a931094..7f3a17b 100644 --- a/mojotrollz/api/char/equipment.php +++ b/mojotrollz/api/char/equipment.php @@ -7,6 +7,7 @@ class equipment { $vars['EQ_PICS'] = \SYSTEM\FILES\files::getURL('equipment'); $vars['CLASS_PICS'] = \SYSTEM\FILES\files::getURL('class'); $vars['class_name'] = player_classes::name($class); + $vars['race_name'] = player_races::name($race); //$vars['char_equip'] = '';//'1,110744,3,109807,16,111412,5,111190,9,111188,10,126342,6,110003,7,120793,8,115217,21,125312,14,110641';// return \SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PAPI(),'char/tpl/equipment.tpl'), $vars); } diff --git a/mojotrollz/api/char/race_visuals.php b/mojotrollz/api/char/race_visuals.php new file mode 100644 index 0000000..75a49ae --- /dev/null +++ b/mojotrollz/api/char/race_visuals.php @@ -0,0 +1,36 @@ + +


@@ -16,7 +16,7 @@ - + diff --git a/mojotrollz/dbd/qq/RACE_VISUALS.php b/mojotrollz/dbd/qq/RACE_VISUALS.php new file mode 100644 index 0000000..832a554 --- /dev/null +++ b/mojotrollz/dbd/qq/RACE_VISUALS.php @@ -0,0 +1,12 @@ +
- - - - + + + +
- - - - + + + +
- - - - + + + +
- - - - + + + +
@@ -41,7 +41,7 @@
diff --git a/mojotrollz/page/wizard_details/wizard_details.php b/mojotrollz/page/wizard_details/wizard_details.php index fcf3906..992b10f 100644 --- a/mojotrollz/page/wizard_details/wizard_details.php +++ b/mojotrollz/page/wizard_details/wizard_details.php @@ -10,8 +10,9 @@ class wizard_details extends SYSTEM\PAGE\Page { $vars = charcreation::data(NULL, false); $vars['WOWICONS'] = \SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_CONFIG_PATH_BASEURL).'api.php?call=files&cat=wowicons&id='; - $vars['WOW_RACE'] = \SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_CONFIG_PATH_BASEURL).'api.php?call=files&cat=race&id='; - $vars['WOW_CLASS'] = \SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_CONFIG_PATH_BASEURL).'api.php?call=files&cat=class&id='; + $vars['WOW_RACE'] = \SYSTEM\FILES\files::getURL('race'); + $vars['WOW_CLASS'] = \SYSTEM\FILES\files::getURL('class'); + $vars['INV_PICS'] = \SYSTEM\FILES\files::getURL('inventory'); $vars['infotext_default'] = \SYSTEM\locale::getStrings(DBD\locale_string::VALUE_CATEGORY_WOW_INFOTEXT)['default']; $vars = array_merge($vars, \SYSTEM\locale::getStrings(DBD\locale_string::VALUE_CATEGORY_MAINPAGE)); diff --git a/mojotrollz/page/wizard_toolbar/wizard_toolbar.php b/mojotrollz/page/wizard_toolbar/wizard_toolbar.php index 7b42672..d6e34d8 100644 --- a/mojotrollz/page/wizard_toolbar/wizard_toolbar.php +++ b/mojotrollz/page/wizard_toolbar/wizard_toolbar.php @@ -16,6 +16,7 @@ class wizard_toolbar extends SYSTEM\PAGE\Page { public function html(){ $vars = charcreation::data(NULL,false); $vars['char_class'] = player_classes::name($vars['char_class']); + $vars['char_race'] = player_races::name($vars['char_race']); $vars['last'] = $this->last; $vars['next'] = $this->next; $vars['WOWICONS'] = \SYSTEM\FILES\files::getURL('wowicons'); diff --git a/mojotrollz/page/wizard_visuals/js/wizard_visuals.js b/mojotrollz/page/wizard_visuals/js/wizard_visuals.js index dfd8b82..b3a47cc 100644 --- a/mojotrollz/page/wizard_visuals/js/wizard_visuals.js +++ b/mojotrollz/page/wizard_visuals/js/wizard_visuals.js @@ -2,17 +2,18 @@ function init_wizard_visuals_toolbar(){ wizard_toolbar();} function init_wizard_visuals (){ - $('#sel_skin_color').change(function(){ + $('#sel_0').change(function(){ sendInfo('{"char_skin_color" : "'+$(this).val()+'"}','wizard_visuals');}); - $('#sel_hair').change(function(){ + $('#sel_1').change(function(){ sendInfo('{"char_hair" : "'+$(this).val()+'"}','wizard_visuals');}); - $('#sel_hair_color').change(function(){ + $('#sel_2').change(function(){ sendInfo('{"char_hair_color" : "'+$(this).val()+'"}','wizard_visuals');}); - $('#sel_face').change(function(){ + $('#sel_3').change(function(){ sendInfo('{"char_face" : "'+$(this).val()+'"}','wizard_visuals');}); - $('#sel_facial_hair').change(function(){ + $('#sel_4').change(function(){ sendInfo('{"char_facial_hair" : "'+$(this).val()+'"}','wizard_visuals');}); - $('#sel_facial_hair_color').change(function(){ + $('#sel_5').change(function(){ sendInfo('{"char_facial_hair_color" : "'+$(this).val()+'"}','wizard_visuals');}); + //$('.item').draggable(); } \ No newline at end of file diff --git a/mojotrollz/page/wizard_visuals/tpl/option.tpl b/mojotrollz/page/wizard_visuals/tpl/option.tpl new file mode 100644 index 0000000..9b6b234 --- /dev/null +++ b/mojotrollz/page/wizard_visuals/tpl/option.tpl @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/mojotrollz/page/wizard_visuals/tpl/select.tpl b/mojotrollz/page/wizard_visuals/tpl/select.tpl new file mode 100644 index 0000000..4110b42 --- /dev/null +++ b/mojotrollz/page/wizard_visuals/tpl/select.tpl @@ -0,0 +1,6 @@ + + ${type} + + \ No newline at end of file diff --git a/mojotrollz/page/wizard_visuals/tpl/wizard_visuals.tpl b/mojotrollz/page/wizard_visuals/tpl/wizard_visuals.tpl index 94eb4a1..206e1e4 100644 --- a/mojotrollz/page/wizard_visuals/tpl/wizard_visuals.tpl +++ b/mojotrollz/page/wizard_visuals/tpl/wizard_visuals.tpl @@ -1,99 +1,30 @@ ${equipment}
- + + + + + + + + + + + + + + + +
-
+
- - - - - - - - - - - - - - - - - - - - - - - - + ${visual_skin} + ${visual_hair} + ${visual_hair_color} + ${visual_face} + ${visual_facial_hair} + ${visual_facial_hair_color}
Skincolor ${char_skin_color}
Hair ${char_hair}
Hair Color ${char_hair_color}
Face ${char_face}
Facial Hair ${char_facial_hair}
Facial Hair Color ${char_facial_hair_color}
diff --git a/mojotrollz/page/wizard_visuals/wizard_visuals.php b/mojotrollz/page/wizard_visuals/wizard_visuals.php index 0cf9592..3e94acf 100644 --- a/mojotrollz/page/wizard_visuals/wizard_visuals.php +++ b/mojotrollz/page/wizard_visuals/wizard_visuals.php @@ -3,10 +3,22 @@ class wizard_visuals extends SYSTEM\PAGE\Page { public static function js(){ - return array( \SYSTEM\WEBPATH(new PPAGE(),'wizard_visuals/js/wizard_visuals.js'));} + return array( \SYSTEM\WEBPATH(new PPAGE(),'wizard_visuals/js/wizard_visuals.js'));} public static function css (){ - return array( \SYSTEM\WEBPATH(new PAPI(),'char/css/equipment.css'));} + return array( \SYSTEM\WEBPATH(new PAPI(),'char/css/equipment.css'));} + + private static function select($race,$type,$value){ + $res = \DBD\RACE_VISUALS::QQ(array($race,$type)); + $options = ''; + while($row = $res->next()){ + $row['selected'] = ''; + if($row['id'] == $value){ + $row['selected'] = 'selected';} + $options .= \SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'wizard_visuals/tpl/option.tpl'), $row); + } + return \SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'wizard_visuals/tpl/select.tpl'), array('options' => $options, 'type' => race_visuals::name($type), 'id' => 'sel_'.$type)); + } public function html(){ $vars = json_decode(charcreation::data(),true)['result']; @@ -15,9 +27,14 @@ class wizard_visuals extends SYSTEM\PAGE\Page { $vars['char_hair_color'], $vars['char_face'], $vars['char_facial_hair'], $vars['char_facial_hair_color']); $vars['INV_PICS'] = \SYSTEM\FILES\files::getURL('inventory'); - if($vars['char_race'] == 'default' || - $vars['char_gender'] == 'default'){ - return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'wizard_visuals/tpl/wizard_visuals_norace.tpl'), array()); + $vars['visual_skin'] = self::select($vars['char_race'], race_visuals::VISUAL_SKIN, $vars['char_skin_color']); + $vars['visual_hair'] = self::select($vars['char_race'], race_visuals::VISUAL_HAIR, $vars['char_hair']); + $vars['visual_hair_color'] = self::select($vars['char_race'], race_visuals::VISUAL_HAIR_COLOR, $vars['char_hair_color']); + $vars['visual_face'] = self::select($vars['char_race'], race_visuals::VISUAL_FACE, $vars['char_face']); + $vars['visual_facial_hair'] = self::select($vars['char_race'], race_visuals::VISUAL_FACIAL_HAIR, $vars['char_facial_hair']); + $vars['visual_facial_hair_color'] = self::select($vars['char_race'], race_visuals::VISUAL_FACIAL_HAIR_COLOR, $vars['char_facial_hair_color']); + if($vars['char_gender'] == 'default'){ + return \SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'wizard_visuals/tpl/wizard_visuals_norace.tpl'), array()); } return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'wizard_visuals/tpl/wizard_visuals.tpl'), $vars); }