From: <mg...@us...> - 2009-04-18 20:22:37
|
Revision: 3496 http://planeshift.svn.sourceforge.net/planeshift/?rev=3496&view=rev Author: mgist Date: 2009-04-18 20:22:34 +0000 (Sat, 18 Apr 2009) Log Message: ----------- - Fixed npc_impervious_ind using wrong type. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2009-04-18 20:08:15 UTC (rev 3495) +++ www/webconsole-new/npcs/npc_details.php 2009-04-18 20:22:34 UTC (rev 3496) @@ -37,10 +37,10 @@ echo '<tr><td>Base Mana (0 for auto-calc)</td><td><input type="text" name="base_mana_max" value="'.$row['base_mana_max'].'" size="7" /></td></tr>'; echo '<tr><td> </td><td> </td></tr>'; echo '<tr><td>Invulnerable</td><td>'; - if ($row['npc_impervious_ind'] == 1){ - echo '<select name="npc_impervious_ind"><option value="0">False</option><option value="1" selected="true">True</option></select>'; + if ($row['npc_impervious_ind'] == "Y"){ + echo '<select name="npc_impervious_ind"><option value="N">False</option><option value="Y" selected="true">True</option></select>'; }else{ - echo '<select name="npc_impervious_ind"><option value="0" selected="true">False</option><option value="1">True</option></select>'; + echo '<select name="npc_impervious_ind"><option value="N" selected="true">False</option><option value="Y">True</option></select>'; } echo '</td></tr>'; echo '<tr><td>Experiance</td><td><input type="text" name="kill_exp" value="'.$row['kill_exp'].'" size="7" /></td></tr>'; @@ -105,7 +105,7 @@ $query2 = "UPDATE sc_npc_definitions SET npctype='$sc_npctype', region='$sc_region' WHERE char_id='$id'"; $result = mysql_query2($query); $result = mysql_query2($query2); - echo '<p class="error">Update Successfule</p>'; + echo '<p class="error">Update Successful</p>'; unset($_POST); npc_main(); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-05-13 07:58:37
|
Revision: 3673 http://planeshift.svn.sourceforge.net/planeshift/?rev=3673&view=rev Author: weltall2 Date: 2009-05-13 07:58:28 +0000 (Wed, 13 May 2009) Log Message: ----------- fixed an incongruency with the schema Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2009-05-13 07:36:43 UTC (rev 3672) +++ www/webconsole-new/npcs/npc_details.php 2009-05-13 07:58:28 UTC (rev 3673) @@ -436,8 +436,8 @@ case "LEGS": echo '<option value="11">Legs</option>'; break; - case "HEAD": - echo '<option value="5">Head</option>'; + case "HELM": + echo '<option value="5">Helm</option>'; break; case "GLOVES": echo '<option value="9">Gloves</option>'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2009-12-11 22:20:17
|
Revision: 4939 http://planeshift.svn.sourceforge.net/planeshift/?rev=4939&view=rev Author: ravna-ps Date: 2009-12-11 22:20:10 +0000 (Fri, 11 Dec 2009) Log Message: ----------- Added edit fields for Skill_Z, Skill_Y in npc/player details->skills Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2009-12-11 17:41:28 UTC (rev 4938) +++ www/webconsole-new/npcs/npc_details.php 2009-12-11 22:20:10 UTC (rev 4939) @@ -188,57 +188,91 @@ } } -function npc_skills(){ - if (checkaccess('npcs', 'edit')){ - if (isset($_GET['npc_id'])){ - if (isset($_POST['commit'])){ - $id = mysql_real_escape_string($_GET['npc_id']); - $skill_id = mysql_real_escape_string($_POST['skill_id']); - if ($_POST['commit'] == "Remove"){ - $query = "DELETE FROM character_skills WHERE character_id='$id' AND skill_id='$skill_id'"; - }else if($_POST['commit'] == "Add Skill"){ - $skill_rank = mysql_real_escape_string($_POST['skill_rank']); - $query = "INSERT INTO character_skills (character_id, skill_id, skill_rank) VALUES ('$id', '$skill_id', '$skill_rank') ON DUPLICATE KEY UPDATE skill_rank='$skill_rank'"; +function npc_skills() +{ + if (checkaccess('npcs', 'edit')) + { + if (isset($_GET['npc_id'])) + { + if (isset($_POST['commit'])) + { + $id = mysql_real_escape_string($_GET['npc_id']); + $skill_id = mysql_real_escape_string($_POST['skill_id']); + $query = ''; + if ($_POST['commit'] == 'Remove') + { + $query = "DELETE FROM character_skills WHERE character_id='$id' AND skill_id='$skill_id'"; + } + else if($_POST['commit'] == 'Add Skill') + { + $skill_rank = mysql_real_escape_string($_POST['skill_rank']); + $query = "INSERT INTO character_skills (character_id, skill_id, skill_rank) VALUES ('$id', '$skill_id', '$skill_rank') ON DUPLICATE KEY UPDATE skill_rank='$skill_rank'"; + } + else if($_POST['commit'] == 'Edit') + { + $skill_rank = mysql_real_escape_string($_POST['skill_rank']); + $skill_Z = mysql_real_escape_string($_POST['skill_Z']); + $skill_Y = mysql_real_escape_string($_POST['skill_Y']); + $query = "UPDATE character_skills SET skill_rank='$skill_rank', skill_Z='$skill_Z', skill_Y='$skill_Y' WHERE character_id='$id' AND skill_id='$skill_id'"; + } + else + { + echo '<p class="error">Invalid commit!</p>'; + return; + } + $result = mysql_query2($query); + unset($_POST); + echo '<p class="error">Update Successful</p>'; + npc_skills(); + } + else + { + $Skill_result = PrepSelect('skill'); + while ($row = mysql_fetch_array($Skill_result, MYSQL_ASSOC)) + { + $s_id = $row['skill_id']; + $Skills[$s_id] = $row['name']; + } + $id = mysql_real_escape_string($_GET['npc_id']); + $query = 'SELECT skill_id, skill_Z, skill_Y, skill_rank FROM character_skills WHERE character_id='.$id.' ORDER BY skill_id'; + $result = mysql_query2($query); + echo '<table border="1"><tr><th>Skill</th><th>Rank</th><th>Skill Z</th><th>Skill Y</th><th>Actions</th></tr>'; + if (mysql_num_rows($result) > 0) + { + while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) + { + $s_id = $row['skill_id']; + echo '<tr><td><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=skills" method="post">'; + echo '<input type="hidden" name="skill_id" value="'.$s_id.'" />'.$Skills[$s_id].'</td>'; + echo '<td><input type="text" size="9" name="skill_rank" value="'.$row['skill_rank'].'" /></td>'; + echo '<td><input type="text" size="9" name="skill_Z" value="'.$row['skill_Z'].'" /></td>'; + echo '<td><input type="text" size="9" name="skill_Y" value="'.$row['skill_Y'].'" /></td>'; + echo '<td><input type="submit" name="commit" value="Edit" /></form>'; + echo '<form action="./index.php?do=npc_details&npc_id='.$id.'&sub=skills" method="post">'; + echo '<input type="hidden" name="skill_id" value="'.$s_id.'" /><input type="submit" name="commit" value="Remove" /></form></td></tr>'; + } + echo '</table>'; + } + else + { + echo '</table>'; + echo '<p class="error">NPC has no skills</p>'; + } + echo '<p>Add a Skill to this NPC</p>'; + echo '<form action="./index.php?do=npc_details&npc_id='.$id.'&sub=skills" method="post">'; + echo '<table border="1"><tr><th>Skill</th><th>Rank</th><th>Actions</th></tr>'; + echo '<tr><td>'.DrawSelectBox('skill', $Skill_result, 'skill_id', '').'</td><td><input type="text" name="skill_rank" size="7" /></td><td>'; + echo '<input type="submit" name="commit" value="Add Skill" /></td></tr></table></form>'; + } } - $result = mysql_query2($query); - unset($_POST); - echo '<p class="error">Update Successful</p>'; - npc_skills(); - }else{ - $Skill_result = PrepSelect('skill'); - while ($row = mysql_fetch_array($Skill_result, MYSQL_ASSOC)){ - $s_id = $row['skill_id']; - $Skills["$s_id"] = $row['name']; + else + { + echo '<p class="error">Error: No NPC Selected</p>'; } - $id = mysql_real_escape_string($_GET['npc_id']); - $query = 'SELECT skill_id, skill_rank FROM character_skills WHERE character_id='.$id.' ORDER BY skill_id'; - $result = mysql_query2($query); - echo '<table border="1"><tr><th>Skill</th><th>Rank</th><th>Actions</th></tr>'; - if (mysql_num_rows($result) > 0){ - while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){ - $s_id = $row['skill_id']; - echo '<tr><td>'.$Skills["$s_id"].'</td><td>'.$row['skill_rank'].'</td>'; - echo '<td><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=skills" method="post">'; - echo '<input type="hidden" name="skill_id" value="'.$s_id.'" /><input type="submit" name="commit" value="Remove" /></form></td></tr>'; - } - echo '</table>'; - }else{ - echo '</table>'; - echo '<p class="error">NPC has no skills</p>'; - } - echo '<p>Add a Skill to this NPC</p>'; - echo '<form action="./index.php?do=npc_details&npc_id='.$id.'&sub=skills" method="post">'; - echo '<table border="1"><tr><th>Skill</th><th>Rank</th><th>Actions</th></tr>'; - echo '<tr><td>'.DrawSelectBox('skill', $Skill_result, 'skill_id', '').'</td><td><input type="text" name="skill_rank" size="7" /></td><td>'; - echo '<input type="submit" name="commit" value="Add Skill" /></td></tr></table></form>'; - - } - }else{ - echo '<p class="error">Error: No NPC Selected</p>'; + }else + { + echo '<p class="error">You are not authorized to use these functions</p>'; } - }else{ - echo '<p class="error">You are not authorized to use these functions</p>'; - } } function npc_traits(){ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2010-01-31 20:15:16
|
Revision: 5420 http://planeshift.svn.sourceforge.net/planeshift/?rev=5420&view=rev Author: ravna-ps Date: 2010-01-31 20:15:09 +0000 (Sun, 31 Jan 2010) Log Message: ----------- Added creation time for players Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2010-01-31 19:13:00 UTC (rev 5419) +++ www/webconsole-new/npcs/npc_details.php 2010-01-31 20:15:09 UTC (rev 5420) @@ -4,7 +4,7 @@ if (isset($_GET['npc_id'])){ if (!isset($_POST['commit'])){ $id = mysql_real_escape_string($_GET['npc_id']); - $query = 'SELECT description, description_ooc, creation_info, description_life, npc_master_id, character_type, loc_sector_id, loc_x, loc_y, loc_z, loc_instance, loc_yrot, racegender_id, base_agility, base_strength, base_endurance, base_intelligence, base_will, base_charisma, base_hitpoints_max, base_mana_max, npc_impervious_ind, kill_exp, npc_spawn_rule, npc_addl_loot_category_id, banker, statue FROM characters WHERE id='.$id; + $query = 'SELECT description, description_ooc, creation_info, description_life, npc_master_id, character_type, loc_sector_id, loc_x, loc_y, loc_z, loc_instance, loc_yrot, racegender_id, base_agility, base_strength, base_endurance, base_intelligence, base_will, base_charisma, base_hitpoints_max, base_mana_max, npc_impervious_ind, kill_exp, npc_spawn_rule, npc_addl_loot_category_id, creation_time, banker, statue FROM characters WHERE id='.$id; $result = mysql_query2($query); $row = mysql_fetch_array($result, MYSQL_ASSOC); echo '<form action="./index.php?do=npc_details&sub=main&npc_id='.$id.'" method="post"><table>'; @@ -20,6 +20,10 @@ echo '<tr><td>This NPC is using NPC <a href="./index.php?do=npc_details&npc_id='.$row['npc_master_id'].'&sub=main">'.$row['npc_master_id'].'</a> as a template<br/>You can set the master NPC id to </td><td><input type="text" name="npc_master_id" value="'.$row['npc_master_id'].'" /></td></tr>'; } } + else // show only for players (npcs are 0000-00-00 00:00:00 + { + echo '<tr><td>Creation date/time</td><td>'.$row['creation_time'].'</td></tr>'; + } $Sectors = PrepSelect('sectorid'); echo '<tr><td>Location:</td>'; echo '<td>'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2010-02-02 23:21:19
|
Revision: 5440 http://planeshift.svn.sourceforge.net/planeshift/?rev=5440&view=rev Author: ravna-ps Date: 2010-02-02 23:21:13 +0000 (Tue, 02 Feb 2010) Log Message: ----------- fixed a bug that prevented intelligence from being set. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2010-02-02 21:29:21 UTC (rev 5439) +++ www/webconsole-new/npcs/npc_details.php 2010-02-02 23:21:13 UTC (rev 5440) @@ -129,6 +129,8 @@ $query .= "base_strength = '$base_strength', "; $base_endurance = mysql_real_escape_string($_POST['base_endurance']); $query .= "base_endurance = '$base_endurance', "; + $base_intelligence = mysql_real_escape_string($_POST['base_intelligence']); + $query .= "base_intelligence = '$base_intelligence', "; $base_will = mysql_real_escape_string($_POST['base_will']); $query .= "base_will = '$base_will', "; $base_charisma = mysql_real_escape_string($_POST['base_charisma']); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2010-02-06 19:26:18
|
Revision: 5461 http://planeshift.svn.sourceforge.net/planeshift/?rev=5461&view=rev Author: ravna-ps Date: 2010-02-06 19:26:11 +0000 (Sat, 06 Feb 2010) Log Message: ----------- If you add items to an NPC it will now take it's quality from the base item Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2010-02-06 17:39:49 UTC (rev 5460) +++ www/webconsole-new/npcs/npc_details.php 2010-02-06 19:26:11 UTC (rev 5461) @@ -478,7 +478,11 @@ $location = 47; } } - $query = "INSERT INTO item_instances (char_id_owner, location_in_parent, stack_count, item_stats_id_standard) VALUES ('$id', $location, '1', '$item')"; + $query = "SELECT item_max_quality FROM item_stats WHERE id = '$item'"; + $result = mysql_query2($query); + $row = mysql_fetch_array($result); + $quality = $row['item_max_quality']; + $query = "INSERT INTO item_instances (char_id_owner, location_in_parent, stack_count, item_stats_id_standard, item_quality, crafted_quality) VALUES ('$id', $location, '1', '$item', '$quality', '$quality')"; }else if ($_POST['commit'] == 'Update'){ $stack_count = mysql_real_escape_string($_POST['stack_count']); $inst_id = mysql_real_escape_string($_POST['id']); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2010-02-07 02:01:21
|
Revision: 5463 http://planeshift.svn.sourceforge.net/planeshift/?rev=5463&view=rev Author: ravna-ps Date: 2010-02-07 02:01:15 +0000 (Sun, 07 Feb 2010) Log Message: ----------- You can now set item_quality on any item instance that is given to an NPC. (npc_details -> items) Fixed a script which attempts to find an empty slot for new items that get added to player inventory. Fixed the dropdown menu so it has the current slot selected by default. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2010-02-06 21:47:56 UTC (rev 5462) +++ www/webconsole-new/npcs/npc_details.php 2010-02-07 02:01:15 UTC (rev 5463) @@ -464,20 +464,19 @@ }else if ($_POST['commit'] == 'Change Location'){ $inst_id = mysql_real_escape_string($_POST['id']); $slot = mysql_real_escape_string($_POST['slot']); - $query = "UPDATE item_instances SET location_in_parent='$slot' WHERE id='$inst_id'"; + $query = "UPDATE item_instances SET location_in_parent='$slot', WHERE id='$inst_id'"; }else if ($_POST['commit'] == 'Add'){ $item = mysql_real_escape_string($_POST['item_id']); $query = "SELECT MAX(location_in_parent) AS loc FROM item_instances WHERE char_id_owner='$id' AND location_in_parent>15"; $result = mysql_query2($query); - if (mysql_num_rows($result) == 0){ - $location=16; - }else{ - $row = mysql_fetch_array($result, MYSQL_ASSOC); - $location = $row['loc']+1; - if ($location > 47){ - $location = 47; - } + $location = ''; + $row = mysql_fetch_array($result, MYSQL_ASSOC); + $location = $row['loc']; + $location = ($location == null ? 15 : $location) + 1; + if ($location > 47){ + $location = 47; } + $query = "SELECT item_max_quality FROM item_stats WHERE id = '$item'"; $result = mysql_query2($query); $row = mysql_fetch_array($result); @@ -485,23 +484,24 @@ $query = "INSERT INTO item_instances (char_id_owner, location_in_parent, stack_count, item_stats_id_standard, item_quality, crafted_quality) VALUES ('$id', $location, '1', '$item', '$quality', '$quality')"; }else if ($_POST['commit'] == 'Update'){ $stack_count = mysql_real_escape_string($_POST['stack_count']); + $item_quality = mysql_real_escape_string($_POST['item_quality']); $inst_id = mysql_real_escape_string($_POST['id']); - $query = "UPDATE item_instances SET stack_count='$stack_count' WHERE id='$inst_id'"; + $query = "UPDATE item_instances SET stack_count='$stack_count', item_quality='$item_quality' WHERE id='$inst_id'"; } unset($_POST); $result = mysql_query2($query); echo '<p class="error">Update Successful</p>'; npc_items(); }else{ - $query = "SELECT i.id, i.location_in_parent, i.stack_count, i.item_stats_id_standard, s.name, s.valid_slots FROM item_instances AS i LEFT JOIN item_stats as s ON s.id=i.item_stats_id_standard WHERE i.char_id_owner='$id' ORDER BY s.name"; + $query = "SELECT i.id, i.location_in_parent, i.stack_count, i.item_quality, i.item_stats_id_standard, s.name, s.valid_slots FROM item_instances AS i LEFT JOIN item_stats as s ON s.id=i.item_stats_id_standard WHERE i.char_id_owner='$id' ORDER BY s.name"; $result = mysql_query2($query); if (mysql_num_rows($result) > 0){ - echo '<table border=1><tr><th>Item</th><th>Location</th><th>Count</th><th>Functions</th></tr>'; + echo '<table border=1><tr><th>Item</th><th>Location</th><th>Count/Quality</th><th>Functions</th></tr>'; while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){ echo '<tr>'; echo '<td>'.$row['name'].'</td>'; echo '<td>'.LocationToString($row['location_in_parent']).'</td>'; - echo '<td><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=items" method="post"><input type="text" name="stack_count" value="'.$row['stack_count'].'" size="3"/><input type="hidden" name="id" value="'.$row['id'].'"/><input type="submit" name="commit" value="Update"/></form></td>'; + echo '<td><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=items" method="post"><input type="text" name="stack_count" value="'.$row['stack_count'].'" size="3"/><input type="text" name="item_quality" value="'.$row['item_quality'].'" size="3"/><input type="hidden" name="id" value="'.$row['id'].'"/><input type="submit" name="commit" value="Update"/></form></td>'; echo '<td><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=items" method="post">'; echo '<input type="hidden" name="id" value="'.$row['id'].'"/>'; echo '<input type="submit" name="commit" value="Remove" /><br/>'; @@ -514,57 +514,176 @@ $i = 1; while ($i <=32){ $j = $i+15; - echo '<option value="'.$j.'">Bulk '.$i.'</option>'; + if ($row['location_in_parent'] == $j) + { + echo '<option value="'.$j.'" selected="selected">Bulk '.$i.'</option>'; + } + else + { + echo '<option value="'.$j.'">Bulk '.$i.'</option>'; + } $i++; } break; case "LEFTHAND": - echo '<option value="1">Left Hand</option>'; + if ($row['location_in_parent'] == 1) + { + echo '<option value="1" selected="selected">Left Hand</option>'; + } + else + { + echo '<option value="1">Left Hand</option>'; + } break; case "RIGHTHAND": - echo '<option value="0">Right Hand</option>'; + if($row['location_in_parent'] == 0) + { + echo '<option value="0" selected="selected">Right Hand</option>'; + } + else + { + echo '<option value="0">Right Hand</option>'; + } break; case "BOTHHANDS": - echo '<option value="2">Both Hands</option>'; + if($row['location_in_parent'] == 2) + { + echo '<option value="2" selected="selected">Both Hands</option>'; + } + else + { + echo '<option value="2">Both Hands</option>'; + } break; case "LEFTFINGER": - echo '<option value="4">Left Finger</option>'; + if($row['location_in_parent'] == 4) + { + echo '<option value="4" selected="selected">Left Finger</option>'; + } + else + { + echo '<option value="4">Left Finger</option>'; + } break; case "RIGHTFINGER": - echo '<option value="3">Right Finger</option>'; + if($row['location_in_parent'] == 3) + { + echo '<option value="3" selected="selected">Right Finger</option>'; + } + else + { + echo '<option value="3">Right Finger</option>'; + } break; case "NECK": - echo '<option value="6">Neck</option>'; + if($row['location_in_parent'] == 6) + { + echo '<option value="6" selected="selected">Neck</option>'; + } + else + { + echo '<option value="6">Neck</option>'; + } break; case "BACK": - echo '<option value="7">Back</option>'; + if($row['location_in_parent'] == 7) + { + echo '<option value="7" selected="selected">Back</option>'; + } + else + { + echo '<option value="7">Back</option>'; + } break; case "BELT": - echo '<option value="12">Belt</option>'; + if($row['location_in_parent'] == 12) + { + echo '<option value="12" selected="selected">Belt</option>'; + } + else + { + echo '<option value="12">Belt</option>'; + } break; case "BRACERS": - echo '<option value="13">Bracers</option>'; + if($row['location_in_parent'] == 13) + { + echo '<option value="13" select="select">Bracers</option>'; + } + else + { + echo '<option value="13">Bracers</option>'; + } break; case "TORSO": - echo '<option value="14">Torso</option>'; + if($row['location_in_parent'] == 14) + { + echo '<option value="14" selected="selected">Torso</option>'; + } + else + { + echo '<option value="14">Torso</option>'; + } break; case "LEGS": - echo '<option value="11">Legs</option>'; + if($row['location_in_parent'] == 11) + { + echo '<option value="11" selected="selected">Legs</option>'; + } + else + { + echo '<option value="11">Legs</option>'; + } break; case "HELM": - echo '<option value="5">Helm</option>'; + if($row['location_in_parent'] == 5) + { + echo '<option value="5" selected="selected">Helm</option>'; + } + else + { + echo '<option value="5">Helm</option>'; + } break; case "GLOVES": - echo '<option value="9">Gloves</option>'; + if($row['location_in_parent'] == 9) + { + echo '<option value="9" selected="selected">Gloves</option>'; + } + else + { + echo '<option value="9">Gloves</option>'; + } break; case "BOOTS": - echo '<option value="10">Boots</option>'; + if($row['location_in_parent'] == 10) + { + echo '<option value="10" selected="selected">Boots</option>'; + } + else + { + echo '<option value="10">Boots</option>'; + } break; case "ARMS": - echo '<option value="8">Arms</option>'; + if($row['location_in_parent'] == 8) + { + echo '<option value="8" selected="selected">Arms</option>'; + } + else + { + echo '<option value="8">Arms</option>'; + } break; case "MIND": - echo '<option value="15">Mind</option>'; + if($row['location_in_parent'] == 15) + { + echo '<option value="15" selected="selected">Mind</option>'; + } + else + { + echo '<option value="15">Mind</option>'; + } break; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2010-02-07 02:14:17
|
Revision: 5464 http://planeshift.svn.sourceforge.net/planeshift/?rev=5464&view=rev Author: ravna-ps Date: 2010-02-07 02:14:11 +0000 (Sun, 07 Feb 2010) Log Message: ----------- set crafted_quality along with item_quality to the same value to avoid item_quality exceeding it's "max" and thus causing absurd situations. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2010-02-07 02:01:15 UTC (rev 5463) +++ www/webconsole-new/npcs/npc_details.php 2010-02-07 02:14:11 UTC (rev 5464) @@ -486,7 +486,7 @@ $stack_count = mysql_real_escape_string($_POST['stack_count']); $item_quality = mysql_real_escape_string($_POST['item_quality']); $inst_id = mysql_real_escape_string($_POST['id']); - $query = "UPDATE item_instances SET stack_count='$stack_count', item_quality='$item_quality' WHERE id='$inst_id'"; + $query = "UPDATE item_instances SET stack_count='$stack_count', item_quality='$item_quality', crafted_quality='$item_quality' WHERE id='$inst_id'"; } unset($_POST); $result = mysql_query2($query); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2010-06-27 20:52:33
|
Revision: 5999 http://planeshift.svn.sourceforge.net/planeshift/?rev=5999&view=rev Author: ravna-ps Date: 2010-06-27 20:52:27 +0000 (Sun, 27 Jun 2010) Log Message: ----------- Fixed a bug that prevented the "add KA" from showing when the NPC had no KA's. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2010-06-26 19:41:57 UTC (rev 5998) +++ www/webconsole-new/npcs/npc_details.php 2010-06-27 20:52:27 UTC (rev 5999) @@ -410,40 +410,40 @@ echo '</tr>'; } echo '</table>'; - $query = "SELECT DISTINCT area FROM npc_triggers ORDER BY area"; - $result = mysql_query2($query); - while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){ - $areas[] = $row['area']; - } - $query = "SELECT DISTINCT name, lastname FROM characters WHERE character_type=1 ORDER by name"; - $result = mysql_query2($query); - while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){ - if ($row['lastname'] == ""){ - $names[] = $row['name']; - }else{ - $names[] = $row['name'].' '.$row['lastname']; - } - } - $display = array_values(array_diff($areas, $names)); - echo '<p>Add a Knowledge Area to this NPC:</p><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=kas" method="post">'; - echo '<select name="area">'; - echo '<option value="SELF">[Add KA of this NPC]</option>'; - foreach ($display as $name){ - echo '<option value="'.$name.'">'.$name.'</option>'; - } - echo '</select>'; - echo '<select name="priority">'; - $i = 1; - while ($i <= 10){ - echo '<option value="'.$i.'">'.$i.'</option>'; - $i++; - } - echo '</select>'; - echo '<input type="submit" name="commit" value="Add KA" />'; - echo '</form>'; }else{ echo '<p class="error">NPC has no KAs Assigned</p>'; } + $query = "SELECT DISTINCT area FROM npc_triggers ORDER BY area"; + $result = mysql_query2($query); + while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){ + $areas[] = $row['area']; + } + $query = "SELECT DISTINCT name, lastname FROM characters WHERE character_type=1 ORDER by name"; + $result = mysql_query2($query); + while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){ + if ($row['lastname'] == ""){ + $names[] = $row['name']; + }else{ + $names[] = $row['name'].' '.$row['lastname']; + } + } + $display = array_values(array_diff($areas, $names)); + echo '<p>Add a Knowledge Area to this NPC:</p><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=kas" method="post">'; + echo '<select name="area">'; + echo '<option value="SELF">[Add KA of this NPC]</option>'; + foreach ($display as $name){ + echo '<option value="'.$name.'">'.$name.'</option>'; + } + echo '</select>'; + echo '<select name="priority">'; + $i = 1; + while ($i <= 10){ + echo '<option value="'.$i.'">'.$i.'</option>'; + $i++; + } + echo '</select>'; + echo '<input type="submit" name="commit" value="Add KA" />'; + echo '</form>'; } }else{ echo '<p class="error">Error: No npc id</p>'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2010-06-27 21:03:08
|
Revision: 6000 http://planeshift.svn.sourceforge.net/planeshift/?rev=6000&view=rev Author: ravna-ps Date: 2010-06-27 21:03:01 +0000 (Sun, 27 Jun 2010) Log Message: ----------- You can now change the names of npcs/mounts/players in the NPC_details listing of the WC as well. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2010-06-27 20:52:27 UTC (rev 5999) +++ www/webconsole-new/npcs/npc_details.php 2010-06-27 21:03:01 UTC (rev 6000) @@ -4,10 +4,11 @@ if (isset($_GET['npc_id'])){ if (!isset($_POST['commit'])){ $id = mysql_real_escape_string($_GET['npc_id']); - $query = 'SELECT description, description_ooc, creation_info, description_life, npc_master_id, character_type, loc_sector_id, loc_x, loc_y, loc_z, loc_instance, loc_yrot, racegender_id, base_agility, base_strength, base_endurance, base_intelligence, base_will, base_charisma, base_hitpoints_max, base_mana_max, npc_impervious_ind, kill_exp, npc_spawn_rule, npc_addl_loot_category_id, creation_time, banker, statue FROM characters WHERE id='.$id; + $query = 'SELECT name, lastname, description, description_ooc, creation_info, description_life, npc_master_id, character_type, loc_sector_id, loc_x, loc_y, loc_z, loc_instance, loc_yrot, racegender_id, base_agility, base_strength, base_endurance, base_intelligence, base_will, base_charisma, base_hitpoints_max, base_mana_max, npc_impervious_ind, kill_exp, npc_spawn_rule, npc_addl_loot_category_id, creation_time, banker, statue FROM characters WHERE id='.$id; $result = mysql_query2($query); $row = mysql_fetch_array($result, MYSQL_ASSOC); echo '<form action="./index.php?do=npc_details&sub=main&npc_id='.$id.'" method="post"><table>'; + echo '<tr><td>First Name/Last Name:</td><td><input type="text" name="first_name" value="'.$row['name'].'" />/<input type="text" name="last_name" value="'.$row['lastname'].'" /></td></tr>'; echo '<tr><td>Description:</td><td><textarea name="description" rows="4" cols="50">'.$row['description'].'</textarea></td></tr>'; echo '<tr><td>OOC Description:</td><td><textarea name="description_ooc" rows="4" cols="50">'.$row['description_ooc'].'</textarea></td></tr>'; echo '<tr><td>Creation Info:</td><td><textarea name="creation_info" rows="4" cols="50">'.$row['creation_info'].'</textarea></td></tr>'; @@ -98,6 +99,10 @@ $query = "UPDATE characters SET "; $description = mysql_real_escape_string($_POST['description']); $query .= "description = '$description', "; + $firstname = mysql_real_escape_string($_POST['first_name']); + $query .= "name = '$firstname', "; + $lastname = mysql_real_escape_string($_POST['last_name']); + $query .= "lastname = '$lastname', "; $description_ooc = mysql_real_escape_string($_POST['description_ooc']); $query .= "description_ooc = '$description_ooc', "; $creation_info = mysql_real_escape_string($_POST['creation_info']); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2010-06-27 21:23:49
|
Revision: 6001 http://planeshift.svn.sourceforge.net/planeshift/?rev=6001&view=rev Author: ravna-ps Date: 2010-06-27 21:23:43 +0000 (Sun, 27 Jun 2010) Log Message: ----------- WC now shows the option to create new Specific KA triggers when there is none yet on this NPC. (bugfix) Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2010-06-27 21:03:01 UTC (rev 6000) +++ www/webconsole-new/npcs/npc_details.php 2010-06-27 21:23:43 UTC (rev 6001) @@ -953,11 +953,9 @@ echo '<input type="submit" name="commit" value="Remove" />'; echo '</form></td></tr>'."\n"; } - echo '<tr><td><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=specific" method="post">Create New Trigger:<br/><input type="text" name="trigger_text" /><br/><input type="submit" name="commit" value="Create New Trigger" /></form></td>'; - echo '<td> </td><td> </td>'; - echo '</tr></table>'; + echo '</table>'; } - //add new here + echo '<form action="./index.php?do=npc_details&npc_id='.$id.'&sub=specific" method="post">Create New Trigger:<br/><input type="text" name="trigger_text" /><br/><input type="submit" name="commit" value="Create New Trigger" /></form>'; } }else{ echo '<p class="error">Error: No npc id</p>'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2010-09-14 21:38:12
|
Revision: 6198 http://planeshift.svn.sourceforge.net/planeshift/?rev=6198&view=rev Author: ravna-ps Date: 2010-09-14 21:38:06 +0000 (Tue, 14 Sep 2010) Log Message: ----------- Fixed a bug that prevented changing the location of items in an NPC's inventory. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2010-09-14 08:02:15 UTC (rev 6197) +++ www/webconsole-new/npcs/npc_details.php 2010-09-14 21:38:06 UTC (rev 6198) @@ -471,7 +471,7 @@ }else if ($_POST['commit'] == 'Change Location'){ $inst_id = mysql_real_escape_string($_POST['id']); $slot = mysql_real_escape_string($_POST['slot']); - $query = "UPDATE item_instances SET location_in_parent='$slot', WHERE id='$inst_id'"; + $query = "UPDATE item_instances SET location_in_parent='$slot' WHERE id='$inst_id'"; }else if ($_POST['commit'] == 'Add'){ $item = mysql_real_escape_string($_POST['item_id']); $query = "SELECT MAX(location_in_parent) AS loc FROM item_instances WHERE char_id_owner='$id' AND location_in_parent>15"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2010-09-16 14:19:39
|
Revision: 6199 http://planeshift.svn.sourceforge.net/planeshift/?rev=6199&view=rev Author: ravna-ps Date: 2010-09-16 14:19:32 +0000 (Thu, 16 Sep 2010) Log Message: ----------- Made the delete button disappear for Players and Pets (can not be deleted by WC). Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2010-09-14 21:38:06 UTC (rev 6198) +++ www/webconsole-new/npcs/npc_details.php 2010-09-16 14:19:32 UTC (rev 6199) @@ -979,7 +979,18 @@ //echo '<p class="bold">NPC: '.$id.' - '.$row['name'].' '.$row['lastname'].'</p>'; echo '<form action="index.php?do=deletenpc&id='.$id.'" method="post" style="margin-bottom: 20px; margin-top: 20px;">'; echo '<p class="bold" style="float: left; margin: 0pt 5px 0pt 0pt;">NPC: '.$id.' - '.$row['name'].' '.$row['lastname'].'</p>'; - echo '<input type="submit" value="delete NPC"></form>'; + if (checkaccess('npcs', 'delete')) + { + if ($row['character_type'] == 1 || $row['character_type'] == 3) + { + echo '<input type="submit" value="delete NPC">'; + } + else + { + echo '<br />'; + } + } + echo '</form>'; $uri_string = $uri_string.'&npc_id='.$_GET['npc_id']; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2011-12-16 00:06:44
|
Revision: 7820 http://planeshift.svn.sourceforge.net/planeshift/?rev=7820&view=rev Author: ravna-ps Date: 2011-12-16 00:06:38 +0000 (Fri, 16 Dec 2011) Log Message: ----------- Removed "characters.base_strength", agi, will, etc from the npc edit screen. They are no longer used by engine, character strength/etc can be set in npc details -> skills now. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2011-12-15 18:41:09 UTC (rev 7819) +++ www/webconsole-new/npcs/npc_details.php 2011-12-16 00:06:38 UTC (rev 7820) @@ -10,7 +10,7 @@ } if (!isset($_POST['commit'])){ $id = mysql_real_escape_string($_GET['npc_id']); - $query = 'SELECT name, lastname, description, description_ooc, creation_info, description_life, npc_master_id, character_type, loc_sector_id, loc_x, loc_y, loc_z, loc_instance, loc_yrot, racegender_id, base_agility, base_strength, base_endurance, base_intelligence, base_will, base_charisma, base_hitpoints_max, base_mana_max, npc_impervious_ind, kill_exp, npc_spawn_rule, npc_addl_loot_category_id, creation_time, banker, statue FROM characters WHERE id='.$id; + $query = 'SELECT name, lastname, description, description_ooc, creation_info, description_life, npc_master_id, character_type, loc_sector_id, loc_x, loc_y, loc_z, loc_instance, loc_yrot, racegender_id, base_hitpoints_max, base_mana_max, npc_impervious_ind, kill_exp, npc_spawn_rule, npc_addl_loot_category_id, creation_time, banker, statue FROM characters WHERE id='.$id; $result = mysql_query2($query); $row = mysql_fetch_array($result, MYSQL_ASSOC); echo '<form action="./index.php?do=npc_details&sub=main&npc_id='.$id.'" method="post"><table>'; @@ -43,13 +43,6 @@ $Races = PrepSelect('races'); echo '<tr><td>Race/Gender: </td><td>'.DrawSelectBox('races', $Races, 'racegender_id', $row['racegender_id']).'</td></tr>'; echo '<tr><td> </td><td> </td></tr>'; - echo '<tr><td>Stats:</td><td><table><tr><td>Agility:</td><td><input type="text" name="base_agility" value="'.$row['base_agility'].'" size="5"/></td></tr>'; - echo '<tr><td>Strength:</td><td><input type="text" name="base_strength" value="'.$row['base_strength'].'" size="5"/></td></tr>'; - echo '<tr><td>Endurance:</td><td><input type="text" name="base_endurance" value="'.$row['base_endurance'].'" size="5"/></td></tr>'; - echo '<tr><td>Intelligence:</td><td><input type="text" name="base_intelligence" value="'.$row['base_intelligence'].'" size="5"/></td></tr>'; - echo '<tr><td>Willpower:</td><td><input type="text" name="base_will" value="'.$row['base_will'].'" size="5"/></td></tr>'; - echo '<tr><td>Charisma:</td><td><input type="text" name="base_charisma" value="'.$row['base_charisma'].'" size="5"/></td></tr></table></td></tr>'; - echo '<tr><td> </td><td> </td></tr>'; echo '<tr><td>Base HP (0 for auto-calc)</td><td><input type="text" name="base_hitpoints_max" value="'.$row['base_hitpoints_max'].'" size="7" /></td></tr>'; echo '<tr><td>Base Mana (0 for auto-calc)</td><td><input type="text" name="base_mana_max" value="'.$row['base_mana_max'].'" size="7" /></td></tr>'; echo '<tr><td> </td><td> </td></tr>'; @@ -100,7 +93,9 @@ } echo '<input type="hidden" name="char_type" value="'.$row['character_type'].'">'; echo '</table><input type="submit" name="commit" value="update" /></form>'; - }else{ + } + else + { $id = mysql_real_escape_string($_GET['npc_id']); $query = "UPDATE characters SET "; $description = mysql_real_escape_string($_POST['description']); @@ -134,18 +129,6 @@ $query .= "loc_instance = '$loc_instance', "; $racegender_id = mysql_real_escape_string($_POST['racegender_id']); $query .= "racegender_id = '$racegender_id', "; - $base_agility= mysql_real_escape_string($_POST['base_agility']); - $query .= "base_agility = '$base_agility', "; - $base_strength = mysql_real_escape_string($_POST['base_strength']); - $query .= "base_strength = '$base_strength', "; - $base_endurance = mysql_real_escape_string($_POST['base_endurance']); - $query .= "base_endurance = '$base_endurance', "; - $base_intelligence = mysql_real_escape_string($_POST['base_intelligence']); - $query .= "base_intelligence = '$base_intelligence', "; - $base_will = mysql_real_escape_string($_POST['base_will']); - $query .= "base_will = '$base_will', "; - $base_charisma = mysql_real_escape_string($_POST['base_charisma']); - $query .= "base_charisma = '$base_charisma', "; $base_hitpoints_max = mysql_real_escape_string($_POST['base_hitpoints_max']); $query .= "base_hitpoints_max = '$base_hitpoints_max', "; $base_mana_max = mysql_real_escape_string($_POST['base_mana_max']); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <lpa...@us...> - 2012-04-17 10:21:35
|
Revision: 8219 http://planeshift.svn.sourceforge.net/planeshift/?rev=8219&view=rev Author: lpancallo Date: 2012-04-17 10:21:25 +0000 (Tue, 17 Apr 2012) Log Message: ----------- Added KA script list to NPC KA list to avoid missing existing triggers. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2012-04-17 07:57:25 UTC (rev 8218) +++ www/webconsole-new/npcs/npc_details.php 2012-04-17 10:21:25 UTC (rev 8219) @@ -449,11 +449,30 @@ echo '<p class="error">Update Successful</p>'; npc_kas(); }else{ + echo '<table border="1">'; + echo '<tr><th>Area</th><th>Priority</th><th>Actions</th></tr>'; + // find npc name + $query = "SELECT name,lastname FROM characters WHERE id='$id'"; + $result = mysql_query2($query); + if (mysql_num_rows($result) > 0){ + $row = mysql_fetch_array($result, MYSQL_ASSOC); + $npcname = trim($row['name']." ".$row['lastname']); + // find the knowledge area "scripts" for the NPC + $query2 = "SELECT id, script FROM quest_scripts WHERE quest_id='-1' and script like '%".$npcname.":%'"; + //echo $query2."<br>"; + $result2 = mysql_query2($query2); + if (mysql_num_rows($result2) > 0){ + $row2 = mysql_fetch_array($result2, MYSQL_ASSOC); + $npcscript = $row2['id']; + echo "<b>KA Scripts:</b></br>A KA script is present for ".$npcname.". "; + echo " <a href=index.php?do=ka_scripts&sub=Read&areaid=".$npcscript."> Read </a> "; + echo " <a href=index.php?do=ka_scripts&sub=Edit&areaid=".$npcscript."> Edit </a> <br/><br/>"; + } + } + // find all knowledge area "triggers" for the NPC $query = "SELECT area, priority FROM npc_knowledge_areas WHERE player_id='$id' ORDER BY priority"; $result = mysql_query2($query); if (mysql_num_rows($result) > 0){ - echo '<table border="1">'; - echo '<tr><th>Area</th><th>Priority</th><th>Actions</th></tr>'; while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){ echo '<tr>'; echo '<td><a href="./index.php?do=ka_detail&area='.rawurlencode($row['area']).'">'.$row['area'].'</a></td>'; @@ -477,6 +496,7 @@ } echo '</table>'; }else{ + echo '</table>'; echo '<p class="error">NPC has no KAs Assigned</p>'; } $query = "SELECT DISTINCT area FROM npc_triggers ORDER BY area"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <lpa...@us...> - 2012-04-17 10:26:54
|
Revision: 8220 http://planeshift.svn.sourceforge.net/planeshift/?rev=8220&view=rev Author: lpancallo Date: 2012-04-17 10:26:45 +0000 (Tue, 17 Apr 2012) Log Message: ----------- added text for no KA scripts Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2012-04-17 10:21:25 UTC (rev 8219) +++ www/webconsole-new/npcs/npc_details.php 2012-04-17 10:26:45 UTC (rev 8220) @@ -459,14 +459,16 @@ $npcname = trim($row['name']." ".$row['lastname']); // find the knowledge area "scripts" for the NPC $query2 = "SELECT id, script FROM quest_scripts WHERE quest_id='-1' and script like '%".$npcname.":%'"; - //echo $query2."<br>"; + echo "<b>KA Scripts:</b></br>"; $result2 = mysql_query2($query2); if (mysql_num_rows($result2) > 0){ $row2 = mysql_fetch_array($result2, MYSQL_ASSOC); $npcscript = $row2['id']; - echo "<b>KA Scripts:</b></br>A KA script is present for ".$npcname.". "; + echo "A KA script is present for ".$npcname.". "; echo " <a href=index.php?do=ka_scripts&sub=Read&areaid=".$npcscript."> Read </a> "; echo " <a href=index.php?do=ka_scripts&sub=Edit&areaid=".$npcscript."> Edit </a> <br/><br/>"; + } else { + echo "None<br/><br/>"; } } // find all knowledge area "triggers" for the NPC This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2012-07-22 23:21:20
|
Revision: 8397 http://planeshift.svn.sourceforge.net/planeshift/?rev=8397&view=rev Author: magodra Date: 2012-07-22 23:21:14 +0000 (Sun, 22 Jul 2012) Log Message: ----------- - Included NULL selection for region for NPCs. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2012-07-22 23:09:01 UTC (rev 8396) +++ www/webconsole-new/npcs/npc_details.php 2012-07-22 23:21:14 UTC (rev 8397) @@ -91,7 +91,7 @@ $query = "SELECT npctype, region FROM sc_npc_definitions WHERE char_id='$id'"; $r2 = mysql_query2($query); $row2 = mysql_fetch_array($r2, MYSQL_ASSOC); - echo '<tr><td>Behaviour/Region</td><td>'.DrawSelectBox('behaviour', $Behaviours, 'sc_npctype', $row2['npctype']).'/'.DrawSelectBox('b_region', $B_Regions, 'sc_region', $row2['region']).'</td></tr>'; + echo '<tr><td>Behaviour/Region</td><td>'.DrawSelectBox('behaviour', $Behaviours, 'sc_npctype', $row2['npctype']).'/'.DrawSelectBox('b_region', $B_Regions, 'sc_region', $row2['region'], true).'</td></tr>'; } echo '<tr><td colspan="2"><input type="hidden" name="char_type" value="'.$row['character_type'].'" /><input type="submit" name="commit" value="update" /></td></tr>'; echo '</table></form>'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2016-03-01 22:25:55
|
Revision: 9812 http://sourceforge.net/p/planeshift/code/9812 Author: ravna-ps Date: 2016-03-01 22:25:52 +0000 (Tue, 01 Mar 2016) Log Message: ----------- fixed a bug where NPC name was appearing before the sub-menu, rather than above it. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2016-02-29 17:18:32 UTC (rev 9811) +++ www/webconsole-new/npcs/npc_details.php 2016-03-01 22:25:52 UTC (rev 9812) @@ -1139,14 +1139,14 @@ echo '<p class="bold" style="float: left; margin: 0pt 5px 0pt 0pt;">NPC: '.$id.' - '.$row['name'].' '.$row['lastname'].'</p>'; if (checkaccess('npcs', 'delete')) { - echo '<form action="index.php?do=deletenpc&id='.$id.'" method="post" style="margin-bottom: 20px; margin-top: 20px;">'; + echo '<form action="index.php?do=deletenpc&id='.$id.'" method="post">'; if ($row['character_type'] == 1 || $row['character_type'] == 3) { - echo '<p><input type="submit" value="delete NPC" /></p>'; + echo '<p style="margin: 0pt 5px 0pt 0pt;"><input type="submit" value="delete NPC" /></p>'; } echo '</form>'; } - echo "\n"; + echo "<br/>\n"; $uri_string = $uri_string.'&npc_id='.$_GET['npc_id']; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2016-03-12 21:08:12
|
Revision: 9839 http://sourceforge.net/p/planeshift/code/9839 Author: ravna-ps Date: 2016-03-12 21:08:10 +0000 (Sat, 12 Mar 2016) Log Message: ----------- Made NPC-> specific KAs use the functionality from ka_trigger.php -> ka_details(), so the functionality on both pages is identical. (This also removes a lot of duplicate code.) Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2016-03-12 20:55:00 UTC (rev 9838) +++ www/webconsole-new/npcs/npc_details.php 2016-03-12 21:08:10 UTC (rev 9839) @@ -976,154 +976,11 @@ } } -function npc_specific(){ - if (checkaccess('npcs', 'read')){ - if (isset($_GET['npc_id'])){ - $id = escapeSqlString($_GET['npc_id']); - // block unauthorized access - if (isset($_POST['commit']) && !checkaccess('npcs', 'edit')) { - echo '<p class="error">You are not authorized to edit NPCs</p>'; - return; - } - if (isset($_POST['commit'])){ - if ($_POST['commit'] == "Update Trigger"){ - $tid = escapeSqlString($_POST['trigger_id']); - $trigger_text = escapeSqlString($_POST['trigger_text']); - $query = "UPDATE npc_triggers SET trigger_text='$trigger_text' WHERE id='$tid'"; - }else if ($_POST['commit'] == "Update Responses"){ - $tid = escapeSqlString($_POST['trigger_id']); - $response1 = escapeSqlString($_POST['response1']); - $response2 = escapeSqlString($_POST['response2']); - $response3 = escapeSqlString($_POST['response3']); - $response4 = escapeSqlString($_POST['response4']); - $response5 = escapeSqlString($_POST['response5']); - $script = escapeSqlString($_POST['script']); - $prerequisite = escapeSqlString($_POST['prerequisite']); - if (isset($_POST['c'])){ - $query = "INSERT INTO npc_responses SET trigger_id='$tid', response1='$response1', response2='$response2', response3='$response3', response4='$response4', response5='$response5', script='$script', prerequisite='$prerequisite'"; - }else{ - $query = "UPDATE npc_responses SET response1='$response1', response2='$response2', response3='$response3', response4='$response4', response5='$response5', script='$script', prerequisite='$prerequisite' WHERE trigger_id='$tid'"; - } - }else if ($_POST['commit'] == "Create Sub-Trigger"){ - $tid_o = escapeSqlString($_POST['trigger_id']); - $trigger_text = escapeSqlString($_POST['trigger_text']); - $query = "SELECT name, lastname FROM characters WHERE id='$id'"; - $result = mysql_query2($query); - $row = fetchSqlAssoc($result); - $npcname = $row['name']; - if ($row['lastname'] != ''){ - $npcname = $npcname . ' ' .$row['lastname']; - } - $tid = GetNextId('npc_triggers'); - $query = "INSERT INTO npc_triggers (id, trigger_text, prior_response_required, area) VALUES ('$tid', '$trigger_text', '$tid_o', '$npcname')"; - $result = mysql_query2($query); - $query = "INSERT INTO npc_responses (trigger_id) VALUES ('$tid')"; - }else if ($_POST['commit'] == "Remove"){ - $tid = escapeSqlString($_POST['trigger_id']); - $query = "DELETE FROM npc_triggers WHERE id='$tid'"; - $result = mysql_query2($query); - $query = "DELETE FROM npc_responses WHERE trigger_id='$tid'"; - }else if ($_POST['commit'] == "Create New Trigger"){ - $trigger_text = escapeSqlString($_POST['trigger_text']); - $query = "SELECT name, lastname FROM characters WHERE id='$id'"; - $result = mysql_query2($query); - $row = fetchSqlAssoc($result); - $npcname = $row['name']; - if ($row['lastname'] != ''){ - $npcname = $npcname . ' ' .$row['lastname']; - } - $tid = GetNextId('npc_triggers'); - $query = "INSERT INTO npc_triggers (id, trigger_text, prior_response_required, area) VALUES ('$tid', '$trigger_text', '0', '$npcname')"; - $result = mysql_query2($query); - $query = "INSERT INTO npc_responses (trigger_id) VALUES ('$tid')"; - } - $result = mysql_query2($query); - echo '<p class="error">Update Successful</p>'; - unset($_POST); - npc_specific(); - }else{ - $query = "SELECT name, lastname FROM characters WHERE id='$id'"; - $result = mysql_query2($query); - $row = fetchSqlAssoc($result); - $npcname = $row['name']; - if ($row['lastname'] != ""){ - $npcname = $npcname . ' ' . $row['lastname']; - } - $query = "SELECT t.id, t.trigger_text, t.prior_response_required, r.response1, r.response2, r.response3, r.response4, r.response5, r.script, r.prerequisite, o.trigger_text AS prior, o.area as prior_area, r.trigger_id FROM npc_triggers AS t LEFT JOIN npc_responses AS r ON t.id=r.trigger_id LEFT JOIN npc_triggers AS o ON t.prior_response_required=o.id WHERE t.area='$npcname'"; - if (isset($_GET['trigger'])){ - $t = escapeSqlString($_GET['trigger']); - $query = $query . " ORDER BY t.id IN ('$t') DESC"; - }else{ - $query = $query . " ORDER BY t.id"; - } - $result = mysql_query2($query); - if (sqlNumRows($result) == 0){ - echo '<p class="error">NPC has no Specific KAs</p>'; - }else{ - echo '<table border="1"><tr><th>Trigger</th><th>Response</th><th>Action</th></tr>'; - while ($row = fetchSqlAssoc($result)){ - $t_id = $row['id']; - echo '<tr>'; - echo '<td>'; - if (isset($t) && ($t == $t_id)){ - echo '<form action="./index.php?do=npc_details&npc_id='.$id.'&sub=specific" method="post">'; - echo '<input type="hidden" name="trigger_id" value="'.$row['id'].'" />'; - if ($row['prior'] != ''){ - echo 'Prior Response: '.$row['prior'].'<br/>'; - if ($row['prior_area'] != $npcname){ - echo 'From KA: '.$row['prior_area'].'<br/>'; - } - } - echo '<input type="text" name="trigger_text" value="'.htmlspecialchars($row['trigger_text']).'"/><br/>'; - echo '<input type="submit" name="commit" value="Update Trigger" /></form></td>'; - }else{ - echo '<a href="./index.php?do=npc_details&npc_id='.$id.'&sub=specific&trigger='.$t_id; - if ($row['trigger_id'] == ''){ - echo '&c=true'; - } - echo '">'.htmlspecialchars($row['trigger_text']).'</a></td>'; - } - echo '<td>'; - if (isset($t) && ($t == $t_id)){ - echo '<form action="./index.php?do=npc_details&npc_id='.$id.'&sub=specific" method="post">'; - echo '<input type="hidden" name="trigger_id" value="'.$row['id'].'" />'; - echo 'Response 1: <textarea name="response1" rows="3" cols="30">'.$row['response1'].'</textarea><br/>'; - echo 'Response 2: <textarea name="response2" rows="3" cols="30">'.$row['response2'].'</textarea><br/>'; - echo 'Response 3: <textarea name="response3" rows="3" cols="30">'.$row['response3'].'</textarea><br/>'; - echo 'Response 4: <textarea name="response4" rows="3" cols="30">'.$row['response4'].'</textarea><br/>'; - echo 'Response 5: <textarea name="response5" rows="3" cols="30">'.$row['response5'].'</textarea><br/>'; - echo '<hr/>'; - echo 'Script: <textarea name="script">'.$row['script'].'</textarea><br/>'; - echo 'Prerequisite: <textarea name="prerequisite">'.$row['prerequisite'].'</textarea><br/>'; - if (isset($_GET['c'])){ - echo '<input type="hidden" name="c" value="true">'; - } - echo '<input type="submit" name="commit" value="Update Responses" /><hr/>'; - echo 'New Trigger:<input type="text" name="trigger_text" size="25" /><input type="submit" name="commit" value="Create Sub-Trigger" />'; - echo '</form>'; - }else{ - if ($row['trigger_id'] == ''){ - echo ' '; - }else{ - echo '<a href="./index.php?do=npc_details&npc_id='.$id.'&sub=specific&trigger='.$t_id.'">+</a>'; - } - } - echo '</td><td>'; - echo '<form action="./index.php?do=npc_details&npc_id='.$id.'&sub=specific" method="post">'; - echo '<input type="hidden" name="trigger_id" value="'.$row['id'].'" />'; - echo '<input type="submit" name="commit" value="Remove" />'; - echo '</form></td></tr>'."\n"; - } - echo '</table>'; - } - echo '<form action="./index.php?do=npc_details&npc_id='.$id.'&sub=specific" method="post">Create New Trigger:<br/><input type="text" name="trigger_text" /><br/><input type="submit" name="commit" value="Create New Trigger" /></form>'; - } - }else{ - echo '<p class="error">Error: No npc id</p>'; - } - }else{ - echo '<p class="error">You are not authorized to use these functions</p>'; - } +function npc_specific() +{ + // use functionality from ka_detail, which has it all already, the npc-submenu has already set the required area=fullname GET var. + include "ka_trigger.php"; + ka_detail(); } function npcdetails(){ @@ -1137,6 +994,7 @@ $row = fetchSqlAssoc($result); //echo '<p class="bold">NPC: '.$id.' - '.$row['name'].' '.$row['lastname'].'</p>'; echo '<p class="bold" style="float: left; margin: 0pt 5px 0pt 0pt;">NPC: '.$id.' - '.$row['name'].' '.$row['lastname'].'</p>'; + $fullname = trim($row['name'].' '.$row['lastname']); if (checkaccess('npcs', 'delete')) { echo '<form action="index.php?do=deletenpc&id='.$id.'" method="post">'; @@ -1166,7 +1024,8 @@ { echo '<a href="'.$uri_string.'&sub=training">training</a><br/>'; echo '<a href="'.$uri_string.'&sub=merchant">merchant</a><br/>'; - echo '<a href="'.$uri_string.'&sub=specific">Specific KA\'s</a><br/>'; + // set area so the function called can use ka_trigger.php->ka_detail(). + echo '<a href="'.$uri_string.'&sub=specific&area='.$fullname.'">Specific KA\'s</a><br/>'; } echo '</div><div class="main_npc">'; if (isset($_GET['sub'])){ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2016-05-02 19:29:52
|
Revision: 9924 http://sourceforge.net/p/planeshift/code/9924 Author: ravna-ps Date: 2016-05-02 19:29:50 +0000 (Mon, 02 May 2016) Log Message: ----------- Added checks to ensure only valid npc_master_id's can be set. (no players, no npcs that have their own masters, no invalid id's) Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2016-05-02 15:34:18 UTC (rev 9923) +++ www/webconsole-new/npcs/npc_details.php 2016-05-02 19:29:50 UTC (rev 9924) @@ -159,6 +159,31 @@ } else { + if ($_POST['char_type'] > 0) // Don't check for players + { + if ($_POST['npc_master_id'] != 0 && $_POST['npc_master_id'] != $_GET['npc_id']) + { + $npc_master_id = escapeSqlString($_POST['npc_master_id']); + $query = "SELECT id, npc_master_id, character_type FROM characters WHERE id = '$npc_master_id'"; + $result = mysql_query2($query); + $row = fetchSqlAssoc($result); + if (sqlNumRows($result) < 1) + { + echo '<p class="error">Invalid npc_master_id, no such id exists.</p>'; + return; + } + if ($row['npc_master_id'] != 0 && $row['id'] != $row['npc_master_id']) + { + echo '<p class="error">Invalid npc_master_id, the target is refering to another master.</p>'; + return; + } + if ($row['character_type'] == 0) + { + echo '<p class="error">Invalid npc_master_id, target is a player.</p>'; + return; + } + } + } $id = escapeSqlString($_GET['npc_id']); $query = "UPDATE characters SET "; $description = escapeSqlString($_POST['description']); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2016-05-02 19:51:22
|
Revision: 9925 http://sourceforge.net/p/planeshift/code/9925 Author: ravna-ps Date: 2016-05-02 19:51:20 +0000 (Mon, 02 May 2016) Log Message: ----------- NPC pages now have a hover text that shows you what values will be used from the master NPC if set. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2016-05-02 19:29:50 UTC (rev 9924) +++ www/webconsole-new/npcs/npc_details.php 2016-05-02 19:51:20 UTC (rev 9925) @@ -29,13 +29,22 @@ echo '<tr><td>Life Description:</td><td><textarea name="description_life" rows="4" cols="50">'.$row['description_life'].'</textarea></td></tr>'; if ($row['character_type'] > 0) // don't show for players { + $masterText = "Setting a master ID means the following data are loaded from the master instead: \n"; + $masterText .= "* Optionally base HP/mana \n"; + $masterText .= "* Skills \n"; + $masterText .= "* Traits \n"; + $masterText .= "* Inventory \n"; + $masterText .= "* Variables \n"; + $masterText .= "* Merchant status \n"; + $masterText .= "* Trainer status \n"; + $masterText .= "* Spells \n"; if ($row['npc_master_id'] == $id) { - echo '<tr><td>This NPC is not using a Template<br/>You can set the master NPC id to</td><td><input type="text" name="npc_master_id" value="'.$row['npc_master_id'].'" /></td></tr>'; + echo '<tr><td>This NPC is not using a Template<br/>You can set the <span title="'.$masterText.'" style="text-decoration: underline;">master</span> NPC id to</td><td><input type="text" name="npc_master_id" value="'.$row['npc_master_id'].'" /></td></tr>'; } else { - echo '<tr><td>This NPC is using NPC <a href="./index.php?do=npc_details&npc_id='.$row['npc_master_id'].'&sub=main">'.$row['npc_master_id'].'</a> as a template<br/>You can set the master NPC id to </td><td><input type="text" name="npc_master_id" value="'.$row['npc_master_id'].'" /></td></tr>'; + echo '<tr><td>This NPC is using NPC <a href="./index.php?do=npc_details&npc_id='.$row['npc_master_id'].'&sub=main">'.$row['npc_master_id'].'</a> as a template<br/>You can set the <span title="'.$masterText.'" style="text-decoration: underline;">master</span> NPC id to </td><td><input type="text" name="npc_master_id" value="'.$row['npc_master_id'].'" /></td></tr>'; } } else // show only for players (npcs are 0000-00-00 00:00:00 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2016-05-04 11:38:06
|
Revision: 9928 http://sourceforge.net/p/planeshift/code/9928 Author: ravna-ps Date: 2016-05-04 11:38:03 +0000 (Wed, 04 May 2016) Log Message: ----------- NPC pages for inherited details like skills, traits, etc now show a link to the master NPC if one is set instead of displaying the (unused) own details. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2016-05-03 18:27:13 UTC (rev 9927) +++ www/webconsole-new/npcs/npc_details.php 2016-05-04 11:38:03 UTC (rev 9928) @@ -298,7 +298,7 @@ } } -function npc_skills() +function npc_skills($masterId) { if (checkaccess('npcs', 'read')) { @@ -346,6 +346,12 @@ } else { + if ($masterId > 0) + { + echo '<p>This NPC is using this <a href="./index.php?do=npc_details&npc_id='.$masterId.'&sub=skills">master NPC</a>, and '; + echo 'receives its skills from that master.</p>'; + return; + } $Skill_result = PrepSelect('skill'); while ($row = fetchSqlAssoc($Skill_result)) { @@ -394,7 +400,7 @@ } } -function npc_traits(){ +function npc_traits($masterId){ if (checkaccess('npcs', 'read')){ if (isset($_GET['npc_id'])){ $id = escapeSqlString($_GET['npc_id']); @@ -415,6 +421,12 @@ echo '<p class="error">Update Successful</p>'; npc_traits(); }else{ + if ($masterId > 0) + { + echo '<p>This NPC is using this <a href="./index.php?do=npc_details&npc_id='.$masterId.'&sub=traits">master NPC</a>, and '; + echo 'receives its traits from that master.</p>'; + return; + } $query = "SELECT racegender_id FROM characters WHERE id='$id'"; $result = mysql_query2($query); $row = fetchSqlAssoc($result); @@ -633,7 +645,7 @@ } } -function npc_items(){ +function npc_items($masterId){ if (checkaccess('npcs', 'read')){ if (isset($_GET['npc_id'])){ $id = escapeSqlString($_GET['npc_id']); @@ -679,6 +691,12 @@ echo '<p class="error">Update Successful</p>'; npc_items(); }else{ + if ($masterId > 0) + { + echo '<p>This NPC is using this <a href="./index.php?do=npc_details&npc_id='.$masterId.'&sub=items">master NPC</a>, and '; + echo 'receives its inventory from that master.</p>'; + return; + } $query = "SELECT i.id, i.location_in_parent, i.stack_count, i.item_quality, i.item_stats_id_standard, s.name, s.valid_slots FROM item_instances AS i LEFT JOIN item_stats as s ON s.id=i.item_stats_id_standard WHERE i.char_id_owner='$id' ORDER BY s.name"; $result = mysql_query2($query); if (sqlNumRows($result) > 0){ @@ -895,7 +913,7 @@ } } -function npc_training(){ +function npc_training($masterId){ if (checkaccess('npcs', 'read')){ if (isset($_GET['npc_id'])){ $id = escapeSqlString($_GET['npc_id']); @@ -920,6 +938,12 @@ echo '<p class="error">Update Successful</p>'; npc_training(); }else{ + if ($masterId > 0) + { + echo '<p>This NPC is using this <a href="./index.php?do=npc_details&npc_id='.$masterId.'&sub=training">master NPC</a>, and '; + echo 'receives its training status from that master.</p>'; + return; + } $query = "SELECT t.skill_id, t.min_rank, t.max_rank, t.min_faction, s.name FROM trainer_skills AS t LEFT JOIN skills AS s ON t.skill_id=s.skill_id WHERE t.player_id='$id'"; $result = mysql_query2($query); if (sqlNumRows($result) == 0){ @@ -958,56 +982,80 @@ } } -function npc_merchant(){ - if (checkaccess('npcs', 'read')){ - if (isset($_GET['npc_id'])){ - $id = escapeSqlString($_GET['npc_id']); - // block unauthorized access - if (isset($_POST['commit']) && !checkaccess('npcs', 'edit')) { - echo '<p class="error">You are not authorized to edit NPCs</p>'; - return; - } - if (isset($_POST['commit'])){ - $category_id = escapeSqlString($_POST['category_id']); - if ($_POST['commit'] == 'Remove'){ - $query = "DELETE FROM merchant_item_categories WHERE category_id = '$category_id' AND player_id = '$id'"; - }else if ($_POST['commit'] == 'Add'){ - $query = "INSERT INTO merchant_item_categories (player_id, category_id) VALUES ('$id', '$category_id')"; +function npc_merchant($masterId) +{ + if (checkaccess('npcs', 'read')) + { + if (isset($_GET['npc_id'])) + { + $id = escapeSqlString($_GET['npc_id']); + // block unauthorized access + if (isset($_POST['commit']) && !checkaccess('npcs', 'edit')) + { + echo '<p class="error">You are not authorized to edit NPCs</p>'; + return; + } + if (isset($_POST['commit'])) + { + $category_id = escapeSqlString($_POST['category_id']); + if ($_POST['commit'] == 'Remove') + { + $query = "DELETE FROM merchant_item_categories WHERE category_id = '$category_id' AND player_id = '$id'"; + } + else if ($_POST['commit'] == 'Add') + { + $query = "INSERT INTO merchant_item_categories (player_id, category_id) VALUES ('$id', '$category_id')"; + } + $result = mysql_query2($query); + unset($_POST); + echo '<p class="error">Update Successful</p>'; + npc_merchant(); + } + else + { + if ($masterId > 0) + { + echo '<p>This NPC is using this <a href="./index.php?do=npc_details&npc_id='.$masterId.'&sub=merchant">master NPC</a>, and '; + echo 'receives its merchant status from that master.</p>'; + return; + } + $query = "SELECT m.category_id, c.name FROM merchant_item_categories AS m LEFT JOIN item_categories AS c ON m.category_id = c.category_id WHERE m.player_id = '$id'"; + $result = mysql_query2($query); + if (sqlNumRows($result) == 0) + { + echo '<p class="error">This NPC is not currently a Merchant</p>'; + } + else + { + echo '<table border="1"><tr><th>Category</th><th>Actions</th></tr>'; + while ($row = fetchSqlAssoc($result)) + { + echo '<tr>'; + echo '<td>'.$row['name'].'</td>'; + echo '<td><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=merchant" method="post">'; + echo '<input type="hidden" name="category_id" value="'.$row['category_id'].'" />'; + echo '<input type="submit" name="commit" value="Remove" />'; + echo '</form></td>'; + echo '</tr>'; + } + echo '</table>'; + } + $Categories = PrepSelect('category'); + echo '<form action="./index.php?do=npc_details&npc_id='.$id.'&sub=merchant" method="post"><p>Add a merchant category to this NPC:'; + echo DrawSelectBox('category', $Categories, 'category_id', ''); + echo '<input type="submit" name="commit" value="Add"/>'; + echo '</p></form>'; + } } - $result = mysql_query2($query); - unset($_POST); - echo '<p class="error">Update Successful</p>'; - npc_merchant(); - }else{ - $query = "SELECT m.category_id, c.name FROM merchant_item_categories AS m LEFT JOIN item_categories AS c ON m.category_id = c.category_id WHERE m.player_id = '$id'"; - $result = mysql_query2($query); - if (sqlNumRows($result) == 0){ - echo '<p class="error">This NPC is not currently a Merchant</p>'; - }else{ - echo '<table border="1"><tr><th>Category</th><th>Actions</th></tr>'; - while ($row = fetchSqlAssoc($result)){ - echo '<tr>'; - echo '<td>'.$row['name'].'</td>'; - echo '<td><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=merchant" method="post">'; - echo '<input type="hidden" name="category_id" value="'.$row['category_id'].'" />'; - echo '<input type="submit" name="commit" value="Remove" />'; - echo '</form></td>'; - echo '</tr>'; - } - echo '</table>'; + else + { + echo '<p class="error">Error: No npc id</p>'; } - $Categories = PrepSelect('category'); - echo '<form action="./index.php?do=npc_details&npc_id='.$id.'&sub=merchant" method="post"><p>Add a merchant category to this NPC:'; - echo DrawSelectBox('category', $Categories, 'category_id', ''); - echo '<input type="submit" name="commit" value="Add"/>'; - echo '</p></form>'; - } - }else{ - echo '<p class="error">Error: No npc id</p>'; } - }else{ - echo '<p class="error">You are not authorized to use these functions</p>'; - } + else + { + echo '<p class="error">You are not authorized to use these functions</p>'; + } } function npc_specific() @@ -1020,10 +1068,12 @@ function npcdetails(){ if (checkaccess('npcs', 'read')){ $uri_string = './index.php?do=npc_details'; + // we will use this to tell the display functions if the NPC is using a master or not. + $masterId = -1; if (isset($_GET['npc_id'])){ if (is_numeric($_GET['npc_id'])){ $id = escapeSqlString($_GET['npc_id']); - $query = "SELECT name, lastname, character_type FROM characters WHERE id='$id'"; + $query = "SELECT name, lastname, npc_master_id, character_type FROM characters WHERE id='$id'"; $result = mysql_query2($query); $row = fetchSqlAssoc($result); //echo '<p class="bold">NPC: '.$id.' - '.$row['name'].' '.$row['lastname'].'</p>'; @@ -1039,7 +1089,11 @@ echo '</form>'; } echo "<br/>\n"; - $uri_string = $uri_string.'&npc_id='.$_GET['npc_id']; + $uri_string = $uri_string.'&npc_id='.$id; + if ($row['character_type'] > 0 && $row['npc_master_id'] != 0 && $row['npc_master_id'] != $id) // check if the npc is using a master, if so, set it. + { + $masterId = $row['npc_master_id']; + } } } echo '<div class="menu_npc">'; @@ -1068,28 +1122,28 @@ npc_factions(); break; case 'variables': - npc_variables(); + npc_variables($masterId); break; case 'main': npc_main(); break; case 'skills': - npc_skills(); + npc_skills($masterId); break; case 'traits': - npc_traits(); + npc_traits($masterId); break; case 'kas': npc_kas(); break; case 'items': - npc_items(); + npc_items($masterId); break; case 'training'; - npc_training(); + npc_training($masterId); break; case 'merchant': - npc_merchant(); + npc_merchant($masterId); break; case 'specific': npc_specific(); @@ -1192,7 +1246,7 @@ echo '<p class="error">You are not authorized to use these functions</p>'; } } -function npc_variables() +function npc_variables($masterId) { if (checkaccess('npcs', 'read')) { @@ -1238,6 +1292,12 @@ } else { + if ($masterId > 0) + { + echo '<p>This NPC is using this <a href="./index.php?do=npc_details&npc_id='.$masterId.'&sub=variables">master NPC</a>, and '; + echo 'receives its variables from that master.</p>'; + return; + } $id = escapeSqlString($_GET['npc_id']); $query = 'SELECT name, value FROM character_variables WHERE character_id='.$id.' ORDER BY name'; $result = mysql_query2($query); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2016-07-31 20:56:22
|
Revision: 9955 http://sourceforge.net/p/planeshift/code/9955 Author: ravna-ps Date: 2016-07-31 20:56:20 +0000 (Sun, 31 Jul 2016) Log Message: ----------- Fixed a missing argument in npc details -> items Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2016-07-31 20:50:44 UTC (rev 9954) +++ www/webconsole-new/npcs/npc_details.php 2016-07-31 20:56:20 UTC (rev 9955) @@ -689,7 +689,7 @@ unset($_POST); $result = mysql_query2($query); echo '<p class="error">Update Successful</p>'; - npc_items(); + npc_items($masterId); }else{ if ($masterId > 0) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2016-12-11 22:21:16
|
Revision: 9973 http://sourceforge.net/p/planeshift/code/9973 Author: ravna-ps Date: 2016-12-11 22:21:13 +0000 (Sun, 11 Dec 2016) Log Message: ----------- Fixed: (WC) Player/NPC item list now also displays what an item got renamed to (if anything). Also fixed various XHTML issues. Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2016-12-10 00:29:09 UTC (rev 9972) +++ www/webconsole-new/npcs/npc_details.php 2016-12-11 22:21:13 UTC (rev 9973) @@ -694,22 +694,30 @@ if ($masterId > 0) { echo '<p>This NPC is using this <a href="./index.php?do=npc_details&npc_id='.$masterId.'&sub=items">master NPC</a>, and '; - echo 'receives its inventory from that master.</p>'; + echo 'receives its inventory from that master.</p>'."\n"; return; } - $query = "SELECT i.id, i.location_in_parent, i.stack_count, i.item_quality, i.item_stats_id_standard, s.name, s.valid_slots FROM item_instances AS i LEFT JOIN item_stats as s ON s.id=i.item_stats_id_standard WHERE i.char_id_owner='$id' ORDER BY s.name"; + $query = "SELECT i.id, i.location_in_parent, i.stack_count, i.item_name, i.item_quality, i.item_stats_id_standard, s.name, s.valid_slots FROM item_instances AS i LEFT JOIN item_stats as s ON s.id=i.item_stats_id_standard WHERE i.char_id_owner='$id' ORDER BY s.name"; $result = mysql_query2($query); if (sqlNumRows($result) > 0){ - echo '<table border=1><tr><th>Item</th><th>Location</th><th>Count/Quality</th><th>Functions</th></tr>'; + echo '<table border="1"><tr><th>Item</th><th>Location</th><th>Count/Quality</th><th>Functions</th></tr>'."\n"; while ($row = fetchSqlAssoc($result)){ echo '<tr>'; - echo '<td>'.$row['name'].'</td>'; - echo '<td>'.LocationToString($row['location_in_parent']).'</td>'; - echo '<td><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=items" method="post"><input type="text" name="stack_count" value="'.$row['stack_count'].'" size="3"/><input type="text" name="item_quality" value="'.$row['item_quality'].'" size="3"/><input type="hidden" name="id" value="'.$row['id'].'"/><input type="submit" name="commit" value="Update"/></form></td>'; - echo '<td><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=items" method="post">'; - echo '<input type="hidden" name="id" value="'.$row['id'].'"/>'; - echo '<input type="submit" name="commit" value="Remove" /><br/>'; - echo '<input type="submit" name="commit" value="Change Location" />'; + echo '<td>'.$row['name']; + if ($row['item_name'] != null && trim($row['item_name']) != '') + { + echo ' (Renamed to "'.htmlentities($row['item_name']).'")'; + } + echo '</td>'."\n"; + echo '<td>'.LocationToString($row['location_in_parent']).'</td>'."\n"; + echo '<td><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=items" method="post"><div>'."\n"; + echo '<input type="text" name="stack_count" value="'.$row['stack_count'].'" size="3"/>'."\n"; + echo '<input type="text" name="item_quality" value="'.$row['item_quality'].'" size="3"/><input type="hidden" name="id" value="'.$row['id'].'"/>'."\n"; + echo '<input type="submit" name="commit" value="Update"/></div></form></td>'."\n"; + echo '<td><form action="./index.php?do=npc_details&npc_id='.$id.'&sub=items" method="post"><div>'."\n"; + echo '<input type="hidden" name="id" value="'.$row['id'].'"/>'."\n"; + echo '<input type="submit" name="commit" value="Remove" /><br/>'."\n"; + echo '<input type="submit" name="commit" value="Change Location" />'."\n"; echo '<select name="slot">'; $slots = preg_split("/[\s,]+/", $row['valid_slots']); foreach ($slots AS $slot){ @@ -891,19 +899,19 @@ break; } } - echo '</select>'; - echo '</form></td>'; + echo '</select>'."\n"; + echo '</div></form></td>'; echo '</tr>'; } - echo '</table>'; + echo '</table>'."\n"; }else{ echo '<p class="error">NPC Has no items in Inventory</p>'; } - echo '<p>Add a new Item to this NPC</p>'; - echo '<form action="./index.php?do=npc_details&npc_id='.$id.'&sub=items" method="post">'; + echo '<p>Add a new Item to this NPC</p>'."\n"; + echo '<form action="./index.php?do=npc_details&npc_id='.$id.'&sub=items" method="post"><div>'; echo DrawItemSelectBox('item_id'); echo '<input type="submit" name="commit" value="Add" />'; - echo '</form>'; + echo '</div></form>'."\n"; } }else{ echo '<p class="error">Error: No npc id</p>'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rav...@us...> - 2016-12-25 16:10:48
|
Revision: 9984 http://sourceforge.net/p/planeshift/code/9984 Author: ravna-ps Date: 2016-12-25 16:10:45 +0000 (Sun, 25 Dec 2016) Log Message: ----------- Added: (WC) editing NPCs now allows you to change their type (NPC/MOUNT/PET). Modified Paths: -------------- www/webconsole-new/npcs/npc_details.php Modified: www/webconsole-new/npcs/npc_details.php =================================================================== --- www/webconsole-new/npcs/npc_details.php 2016-12-21 16:32:26 UTC (rev 9983) +++ www/webconsole-new/npcs/npc_details.php 2016-12-25 16:10:45 UTC (rev 9984) @@ -17,6 +17,18 @@ } if (!isset($_POST['commit'])) { + $enumCharType = array('NPC', 'MOUNT', 'PET'); + $makeEnumDropdown = function ($name, $enumArray, $selected = -1) + { + $output = ''; + $output .= '<select name="'.$name.'">'; + foreach ($enumArray as $key => $value) + { // +1 because we want to skip the real element 0 (players), which we don't want to be able to change to. + $output .= '<option value="'.($key + 1).'" '.(($key + 1) == $selected ? 'selected="selected"' : '').'>'.$value.'</option>'; + } + $output .= '</select>'; + return $output; + }; $id = escapeSqlString($_GET['npc_id']); $query = 'SELECT name, lastname, description, description_ooc, creation_info, description_life, npc_master_id, character_type, loc_sector_id, loc_x, loc_y, loc_z, loc_instance, loc_yrot, racegender_id, base_hitpoints_max, base_mana_max, npc_impervious_ind, kill_exp, npc_spawn_rule, npc_addl_loot_category_id, creation_time, banker, statue FROM characters WHERE id='.$id; $result = mysql_query2($query); @@ -62,6 +74,10 @@ echo '<td><input type="text" name="loc_instance" value="'.$row['loc_instance'].'" size="5"/></td></tr></table></td></tr>'; $Races = PrepSelect('races'); echo '<tr><td>Race/Gender: </td><td>'.DrawSelectBox('races', $Races, 'racegender_id', $row['racegender_id']).'</td></tr>'; + if ($row['character_type'] > 0) // Don't show for players + { + echo '<tr><td>Character Type</td><td>'.$makeEnumDropdown('character_type', $enumCharType, $row['character_type']).'</td></tr>'; + } echo '<tr><td> </td><td> </td></tr>'; echo '<tr><td>Base HP (0 for auto-calc)</td><td><input type="text" name="base_hitpoints_max" value="'.$row['base_hitpoints_max'].'" size="18" /> '; echo '<input type="checkbox" name="base_hitpoints_null" onclick="changeHitpointsText()" /> Use Master Value.</td></tr>'; @@ -231,6 +247,11 @@ $query .= "loc_instance = '$loc_instance', "; $racegender_id = escapeSqlString($_POST['racegender_id']); $query .= "racegender_id = '$racegender_id', "; + if ($_POST['char_type'] > 0) // Don't update for players + { + $characterType = escapeSqlString($_POST['character_type']); + $query .= "character_type = $characterType, "; + } if (isset($_POST['base_hitpoints_null'])) { $query .= "base_hitpoints_max = null, "; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |