avatar_fanatOo

Как изменить класс в MU Online? Объясняем на примере использования скрипта

Автор fanatOo, 2009 Июнь 10, 06:03

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Ключевые слова [SEO] mu onlineВеб-сайтыскрипты

fanatOo

У меня есть скрипт на смену класса, этот скрипт обычно используют на Zog Web's. Вот проблемка скрипт довавил в панель игрока но смену делать не могу    Кто можеш сказать ?? За спасибки

Everybody

Может содержимое кода предоставишь, и пояснишь в какой веб добавил? Непонятно...

fanatOo

<?php

$name 
stripslashes($_SESSION['name']);
$login $_SESSION["login"];
$oldpwd $_SESSION["password"];

if (isset(
$_POST['chgclass_s'])){

if(empty(
$login)){
die(
'<font color=red>Сначала Залогиньтесь !<font>');
}
$query "select Class from Character WHERE Name='$name'";
$result mssql_query$query );
$row mssql_fetch_row($result);
$class=$row[0];


if (
$class == 64) {
$class 'Dark Lord';
}
if (
$class == 0) {
$class 'Dark Wizard';
}
if (
$class == 1) {
$class 'Soul Master';
}
if (
$class == 2) {
$class 'Grand Master';
}
if(
$class == 16){
$class 'Dark Knight';
}
if(
$class == 17){
$class 'Blade Knight';
}
if(
$class == 18){
$class 'Blade Master';
}
if(
$class == 32){
$class 'Elf';
}
if(
$class == 33){
$class 'Muse Elf';
}
if(
$class == 34){
$class 'High Elf';
}
if(
$class == 48){
$class 'Magic Gladiator';
}
if(
$class == 49){
$class 'Duel Master';
}
if (
$class == 64) {
$class 'Dark Lord';
}
if (
$class == 65) {
$class 'Lord Emperror';
}
if (
$class == 80) {
$class 'Summoner';
}
if (
$class == 81) {
$class 'Bloody Summoner';
}
if (
$class == 82) {
$class 'Dimension Master';
}
$count stripslashes($_POST['zen_byeitem']);




if(
$count=='1'){
$class_number='2';
}
elseif(
$count=='2'){
$class_number='18';
}
elseif(
$count=='3'){
$class_number='34';
}
elseif(
$count=='4'){
$class_number='49';
}
elseif(
$count=='5'){
$class_number='65';
}
elseif(
$count=='6'){
$class_number='82';
}




$sql_username_check mssql_query("SELECT memb___id FROM MEMB_INFO WHERE memb___id='$login'");
$username_check mssql_num_rows($sql_username_check);

$sql_pw_check mssql_query("SELECT memb__pwd FROM MEMB_INFO WHERE memb__pwd='$oldpwd' and memb___id='$login'");
$pw_check mssql_num_rows($sql_pw_check);

$query "select Class from Character WHERE Name='$name'";
$result mssql_query$query );
$row mssql_fetch_row($result);


$class=$row[0];

$query12 "select cc from MEMB_INFO WHERE memb___id='$login'";
$result12 mssql_query$query12 );
$row12 mssql_fetch_row($result12);


$change=$row12[0];









if (empty(
$login) || empty($oldpwd) || empty($name)) {
echo 
"<div id="msg-error"><ul><li>Некоторые поля не заполнены.</li></ul></div><br>";
}

elseif(
$change=='1'){
echo 
"<div id="msg-error"><ul><li>Вы уже меняли класс! Повторную смену вы можете купить за акры !<br></li></ul></div>";

}
elseif(
$count != '1' AND $count != '2' AND $count != '3' AND $count != '4' AND $count != '5' AND $count != '6'){ echo "<div id="msg-ok"><ul><li>Попытка ввести в заблуждение скрипт!<br></li></ul></div>"; }




else {
$msquery "
UPDATE dbo.Character SET Inventory = NULL
WHERE Name = '
$name'
UPDATE dbo.Character SET Class = '
$class_number'
WHERE Name = '
$name'
UPDATE dbo.MEMB_INFO SET cc = '1'
WHERE memb___id = '
$login'

"
;


$msresultsmssql_query($msquery);
echo
" <div id="msg-ok"><ul><li>Вы поменяли Класс</li></ul></div>";}




}

?>

<FORM action='' method=post>
<style type="text/css">
<!--
.style2 {font-weight: bold}
-->
</style>

<div align="center"><BR>
<table width="200" border="0" cellpadding="1" cellspacing="1">
<tr>
<td colspan="2" bgcolor="#6D945F"><span class="postZkForm"><strong>Смена класса персонажа </strong></span></td>
</tr>
<tr>
<td colspan="2" bgcolor="#D2E3D5"><span class="postZkForm"><font color=red><b>Здесь вы можете сменить класс своего персонажа.Все вещи из инвентаря будут удалены!</b></font></span></td>
</tr>
<tr>
<td colspan="2" bgcolor="#D2E3D5">
<?php
print"<B>Активный персонаж: $name</B>";
print
"<BR>";
?>

</td>
</tr>
<tr>
<td colspan="2"><table width="100%" border="1" cellpadding="0" cellspacing="0" bordercolor="#000000" bgcolor="#D2E3D5">
<tbody>
<tr class="style2" align="middle">
<td><b>#</b></td>
<td><b>Класс</b></td>
</tr>
<tr class="style2">
<td><input type="radio" value="1" name="zen_byeitem" /></td>
<td>Grand Master</td>
</tr>
<tr class="style2">
<td><input type="radio" value="2" name="zen_byeitem" /></td>
<td>Blade Master</td>
</tr>
<tr class="style2">
<td><input type="radio" value="3" name="zen_byeitem" /></td>
<td>High Elf</td>
</tr>
<tr class="style2">
<td><input type="radio" value="4" name="zen_byeitem" /></td>
<td>Duel Master</td>
</tr>
<tr class="style2">
<td><input type="radio" value="5" name="zen_byeitem" /></td>
<td>Lord Emperror</td>
</tr>
<tr class="style2">
<td><input type="radio" value="6" name="zen_byeitem" /></td>
<td>Dimension Master</td>
</tr>
</tbody>
</table></td>
</tr>
<tr>
<td colspan="2" bgcolor="#D2E3D5"><div align="center"><span class="postZkForm">
<input class="button-gray" type="submit" value="Сменить Класс" name="chgclass_s" />
</span></div>              <div align="center"></div></td>
</tr>
</table>
</div></form>


ВОТ СОДЕРЖИМОЕ. СТАВИЛ И НА 0.8 И НА DSW НЕ РАБОТАЕТ ПОМОГИТЕ

Everybody

По коду видно что нормально должно работать, только на деле не проверял.
Вот когда пытался менять то что в итоге происходило? (если ошибка то какая)

fanatOo

Там как я пытался менять всегда пишет: Сначало залогнитесь! Дело в том что мне интересно и я не знаю как его всезать с SQL чтобы он при попытки сменить класс писал мой ник вот как на скрине https://xamer-mu.telenet.ru/12.JPG , но он этого не делает! Подскажите плиз

Everybody

Спойлер
Да эта ситуация звучит как: Не подходит колесо от "запорожец" к "Mersedes" , пробовал приварить сваркой, но машину теперь ведет в сторону.
[свернуть]

Заметь что скрипты от разных му сайтов не взаимноменяемые, некоректно задан изначально. К какому вебу нужно прикрутить или всетаки стои использовать тот веб из которого бы взят скрипт? Функциональности там предостаточно (зог веб).

fanatOo

Тоесть я как понел этот скрипт уже не куда нельзя присучить только для Зог Ве*а , спасибо за ответ!))

Everybody

Цитата: fanatOo от 2009 Июнь 11, 20:52  Тоесть я как понел этот скрипт уже не куда нельзя присучить только для Зог Ве*а , спасибо за ответ!))
Да все можно, только не описал точно для чего именно

fanatOo

Ну я бы хотел его поставить на 0.8 чтоб менять класс , было бы интересней и забавней!! И веселей , так может более понятней ??

3BEPb

Пишу сюда потому что не могу создать тему а можно из скрипта Websop class переделать его на сайт и место кредитов zen чтоб снимало за ранее спасибо
Спойлер
<?php
include"inc/m_protect.inc.php";
include_once"inc/warehouse.inc.php";
if(!isset($username)){
die("<div class="msg-error"><ul><li>".phrase_please_login_first."</li></ul></div>");
}

if (($_POST['character']) && ($_POST['class'])) {
$query   = mssql_query("select [Class] from [Character] where [Name]='".secure($_POST['character'])."' and [AccountID]='".$GLOBALS['mu_user']."'");
$res   = mssql_fetch_row($query);
switch($_POST['class']){
case 'sm': $_class='1'; break;
case 'bk': $_class='17'; break;
case 'mg': $_class='48'; break;
case 'dl': $_class='64'; break;
case 'me': $_class='33'; break;
}
if ($webshop['misc']['s3classes']==false)
{
switch($_POST['class']){
case 'gm': print 'err'; break;
case 'bm': print 'err'; break;
case 'he': print 'err'; break;
case 'dm': print 'err'; break;
case 'le': print 'err'; break;
}
}
require 'inc/function.checkstatus.php';
switch (2) {
case checkstatus($_POST['character']) :
$legtitle   = "Error";
$content   = phrase_offline_rq;
break;
case (mssql_num_rows($query)!=1):
$legtitle   = "Error";
$content   = phrase_nosuch_char;
break;
case $webshop['credits']['classchg']>$mycreds:
$legtitle   = "Error";
$content   = phrase_lack_credits;
break;
case $_class==$res[0]:
$legtitle   = "Error";
$content   = phrase_same_class;
break;
default :
shoplog("Character: ".$_POST['character']." , changed class to ".$_POST['class']." for ".$webshop['credits']['classchg']." credits");
mssql_query("exec XCredits '".$GLOBALS['mu_user']."', ".($webshop['credits']['classchg']*-1));
mssql_query("update [Character] set [Class]='".$_class."' where [Name]='".secure($_POST['character'])."';") or die("Failed to change your class");
$legtitle   = "Success";
$content   = "You have successfully changed ".htmlspecialchars($_POST['character'])."'s class to ".htmlspecialchars($_POST['class']);
}
print '<fieldset style="width: 300px"><legend class="mu_style2" style="padding: 0px;font-weight:bold;">'.$legtitle.'</legend><div>'.$content.'</div>
</fieldset><br><br>';
}
$query   = mssql_query("select [Name],[Class] from [Character] where [AccountID]='".$GLOBALS['mu_user']."'");
$i   = 0;
$mychars= '';
while($i<mssql_num_rows($query)) {
$char   = mssql_fetch_array($query);
$i++;
$mychars.="<option class="clchg" value="".htmlspecialchars($char['Name'])."">".$char['Name']."</option>";
}
print "
<script type="text/javascript">
function amisure() {
if (".$mycreds."<".$webshop['credits']['classchg'].") {
alert('".phrase_lack_credits."');
return false;
}
return webshop_confirm_action('Are you sure you want to change '+document.getElementById('character').value+''s class to '+document.getElementById('class').value+'?');
}
</script>
";
print'
<fieldset style="width: 300px">
<legend class="mu_style2" style="padding: 0px;font-weight:bold;">Change your class for credits</legend>
<form method="post" action="'.$_SERVER['SCRIPT_NAME'].'?sy=classchange">
<table width=100% cellpadding=0 cellspacing=0 border=0>
<tr><td align="center">
<select style="color: #000000;" id="character" name="character">
<optgroup label="Select a character">
'.$mychars.'
</select></td><td align="center">
<span id="sybrack" name="sybrack">
<select style="color: #000000;" id="class" name="class">
<optgroup label="Change class to">
<option class=clchg value="sm">Soul Master</option>
<option class=clchg value="gm">Grand Master</option>
<option class=clchg value="bk">Blade knight</option>
<option class=clchg value="bm">Blade Master</option>
<option class=clchg value="me">Muse Elf</option>';
if ($webshop['misc']['s3classes']) {
print '<option class=clchg value="he">High elf</option>
<option class=clchg value="mg">Magic gladiator</option>
<option class=clchg value="dm">Duel master</option>
<option class=clchg value="dl">Dark lord</option>
<option class=clchg value="le">Lord emperor</option>';
}
print '
</select>
</span>
</td></tr><tr><td colspan="2" height=15></td></tr><tr>
<td colspan="2" align="center" style="padding-top: 10px;border-top: 1px dashed #DDDDDD"><input onClick="return amisure(); " value="Change your class" type="submit"><br>Change costs '.number_format($webshop['credits']['classchg']).'

'.phrase_credits.'</td></tr></table>
</form>
</fieldset><br><br>
<fieldset style="width: 300px">
<legend class="mu_style2" style="padding: 0px;font-weight:bold;">Important note</legend>
<div align="justify">
'.phrase_class_tip.'
</div>
</fieldset>
';
}
?>
[свернуть]

Deathless

Тем кому нужно для ДСВ:
(скрипт только меняет класс, ну и чистит инвенторию)

Спойлер
<?php

include"inc/m_protect.inc.php";
if(!isset($username)){
print"<div class="msg-error"><ul><li>".phrase_please_login_first."</li></ul></div>";
}

if (isset($_POST['chgclass_s'])){
$query = "select Class from Character WHERE Name='$name'";
$result = mssql_query( $query );
$row = mssql_fetch_row($result);
$count = stripslashes($_POST['zen_byeitem']);

if($count=='1'){
$class_number='2';
}
elseif($count=='2'){
$class_number='18';
}
elseif($count=='3'){
$class_number='34';
}
elseif($count=='4'){
$class_number='49';
}
elseif($count=='5'){
$class_number='65';
}

$query = "select Class from Character WHERE Name='$char_name'";
$result = mssql_query( $query );
$row = mssql_fetch_row($result);

if($count != '1' AND $count != '2' AND $count != '3' AND $count != '4' AND $count != '5'){ echo "<div id="msg-ok"><ul><li>Попытка ввести в

заблуждение скрипт!<br></li></ul></div>"; }

else {
$msquery = "
UPDATE dbo.Character SET Inventory = NULL
WHERE Name = '$char_name'
UPDATE dbo.Character SET Class = '$class_number'
WHERE Name = '$char_name'
";

$msresults= mssql_query($msquery);
echo" <div id="msg-ok"><ul><li>You've changed class</li></ul></div>";}
}
?>

<FORM action='' method=post>
<style type="text/css">
<!--
.style2 {font-weight: bold}
-->
</style>

<div align="center"><BR>
<table width="200" border="0" cellpadding="1" cellspacing="1">
<tr>
<td colspan="2" bgcolor="#6D945F"><span class="postZkForm"><strong>Class Change</strong></span></td>
</tr>
<tr>
<td colspan="2" bgcolor="#D2E3D5"><span class="postZkForm"><font color=red><b>Here you can change class</b></font></span></td>
</tr>
<tr>
<td colspan="2" bgcolor="#D2E3D5">
<?php
print"<B>Selected char: $char_name</B>";
print"<BR>";
?>
</td>
</tr>
<tr>
<td colspan="2"><table width="100%" border="1" cellpadding="0" cellspacing="0" bordercolor="#000000" bgcolor="#D2E3D5">
<tbody>
<tr class="style2" align="middle">
<td><b>#</b></td>
<td><b>Class</b></td>
</tr>
<tr class="style2">
<td><input type="radio" value="1" name="zen_byeitem" /></td>
<td>Grand Master</td>
</tr>
<tr class="style2">
<td><input type="radio" value="2" name="zen_byeitem" /></td>
<td>Blade Master</td>
</tr>
<tr class="style2">
<td><input type="radio" value="3" name="zen_byeitem" /></td>
<td>High Elf</td>
</tr>
<tr class="style2">
<td><input type="radio" value="4" name="zen_byeitem" /></td>
<td>Duel Master</td>
</tr>
<tr class="style2">
<td><input type="radio" value="5" name="zen_byeitem" /></td>
<td>Lord Emperror</td>
</tr>
</tbody>
</table></td>
</tr>
<tr>
<td colspan="2" bgcolor="#D2E3D5"><div align="center"><span class="postZkForm">
<input class="button-gray" type="submit" value="Change Class" name="chgclass_s" />
</span></div> <div align="center"></div></td>
</tr>
</table>
</div></form>
[свернуть]

П.С.: это просто наброски, кому нужно тот доделает.  ;)

3BEPb

спасибо работает только есть 1 но он по идее должен 1 раз менять профу за зен а потом только за кредиты  а можно менять сколько хочешь может кто подправит?

MaMoHT

Спойлер
<?php
//Class change script
//© 2008 SkyLinE
require 'config.php';
$name = $char_name;
$login = $_SESSION['DS_UserName'];
$oldpwd = $_SESSION['DS_PassWord'];
if (empty($login)){
die("please login first!");
}
$query = "select Class from Character WHERE Name='$name'";
$result = mssql_query( $query );
$row = mssql_fetch_row($result);
$class=$row[0];


if ($class == 64) {
$class = 'Dark Lord';
}
if ($class == 0) {
$class = 'Dark Wizard';
}
if ($class == 1) {
$class = 'Soul Master';
}
if ($class == 2) {
$class = 'Grand Master';
}
if($class == 16){
$class = 'Dark Knight';
}
if($class == 17){
$class = 'Blade Knight';
}
if($class == 18){
$class = 'Blade Master';
}
if($class == 32){
$class = 'Elf';
}
if($class == 33){
$class = 'Muse Elf';
}
if($class == 34){
$class = 'High Elf';
}
if($class == 48){
$class = 'Magic Gladiator';
}
if($class == 49){
$class = 'Duel Master';
}
if ($class == 64) {
$class = 'Dark Lord';
}
if ($class == 65) {
$class = 'Lord Emperror';
}
if ($class == 80) {
$class = 'Summoner';
}
if ($class == 81) {
$class = 'Bloody Summoner';
}
if ($class == 82) {
$class = 'Dimension Master';
}


if (isset($_POST['chgclass_s'])){
//=============Credit count=============
$need_credits='1';
//====================================

require 'config.php';
$name = $char_name;
$login = $_SESSION['DS_UserName'];
$oldpwd = $_SESSION['DS_PassWord'];

$count = stripslashes($_POST['zen_byeitem']);




if($count=='1'){
$class_number='1';
}
elseif($count=='2'){
$class_number='17';
}
elseif($count=='3'){
$class_number='33';
}
elseif($count=='4'){
$class_number='48';
}
elseif($count=='5'){
$class_number='64';
}

$msconnect=mssql_connect($Sql['host'],$Sql['user'],$Sql['password']);
$msdb=mssql_select_db("MuOnline",$msconnect);

$sql_username_check = mssql_query("SELECT memb___id FROM MEMB_INFO WHERE memb___id='$username'");
$username_check = mssql_num_rows($sql_username_check);

$sql_pw_check = mssql_query("SELECT memb__pwd FROM MEMB_INFO WHERE memb__pwd='$oldpwd' and memb___id='$username'");
$pw_check = mssql_num_rows($sql_pw_check);

$query = "select Class from Character WHERE Name='$name'";
$result = mssql_query( $query );
$row = mssql_fetch_row($result);

$query_ = "select Credits,memb___id from MEMB_CREDITS WHERE memb___id='$login'";
$result_ = mssql_query( $query_ );
$row_ = mssql_fetch_row($result_);

if($row_[1]== NULL){

$msquery = "INSERT INTO MEMB_CREDITS (memb___id,credits) VALUES ('$login','0')";
$msresults= mssql_query($msquery);

}

$class=$row[0];

$new_credits = $row_[0] - $need_credits;





if (empty($login) || empty($oldpwd) || empty($name)) {
echo "<div id="msg-error"><ul><li>Error: some of the fields are empty. Go back and try again.</li></ul></div><br>";
}

elseif($count != '1' AND $count != '2' AND $count != '3' AND $count != '4' AND $count != '5'){ echo "<div id="msg-error"><ul><li>Some Error.#3<br></li></ul></div>"; }
elseif($class == 0 OR $class == 16 OR $class == 32){ echo "<div id="msg-error"><ul><li>Need Second Quest Completed<br></li></ul></div>"; }


elseif ($row_[0] < $need_credits){
echo "<div id="msg-error"><ul><li>You Don't have credits <br></li></ul></div>"; }


else {   $msconnect=mssql_connect("$dbhost","$dbuser","$dbpasswd");
$msdb=mssql_select_db("MuOnline",$msconnect);
$msquery = "
UPDATE dbo.Character SET Class = '$class_number'
WHERE Name = '$name'
UPDATE dbo.MEMB_CREDITS SET Credits = '$new_credits'
WHERE memb___id = '$login'"; //UPDATE dbo.Character SET Inventory = NULL WHERE Name = '$name'


$msresults= mssql_query($msquery);
echo" <div id="msg-ok"><ul><li>Your Class changed</li></ul></div>";}




}
?>

<FIELDSET><LEGEND>&nbsp;Class change&nbsp;</LEGEND>
<FORM class=postZkForm action='' method=post>
There you can change your class.Price - 300 credits.All items from inventory Will be removed!<BR><BR>
<?php
print"<B>Selected Char:</B> $name<BR>";
print"<B>Current Class:</B> $class<BR>";
print"<BR>";
?>
<TABLE class=btb cellSpacing=0 cellPadding=0 border=0>
<TBODY>

<TR class=style2 align=middle>
<TD><B>#</B></TD>
<TD><B>Class</B></TD></TR>
<TR class=style2>
<TD><INPUT type=radio value=1 name=zen_byeitem></TD>
<TD>Soul Master</TD></TR>
<TR class=style2>
<TD><INPUT type=radio value=2 name=zen_byeitem></TD>
<TD>Blade Knight</TD></TR>
<TR class=style2>
<TD><INPUT type=radio value=3 name=zen_byeitem></TD>
<TD>Muse Elf</TD>
</TR>
<TR class=style2>
<TD><INPUT type=radio value=4 name=zen_byeitem></TD>
<TD>Magic Gladiator</TD>
</TR>
<TR class=style2>
<TD><INPUT type=radio value=5 name=zen_byeitem></TD>
<TD>Dark Lord</TD>
</TR></TBODY></TABLE>

<BR><INPUT class=button-gray type=submit value="Change class" name=chgclass_s>


</FORM><BR>
</FIELDSET>
[свернуть]


Етот скрипт подходит для дсв

Похожие темы (5)