имеется полные исходники движка и сама база кому интересно оставляем аськи , с просьбой дай и тд.. идём лесом.Продавать код не продаю отдам в один руки толковые которые действительно чтото могут сделать.Но отдам его если вы мне поможете с моей игрой, все части обсудим в аське.
код кузницы =)
код кузницы =)
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>NeverFate - просмотр лога боя</TITLE>
<META http-equiv=Content-type content="text/html; charset=windows-1251"><LINK
href="Кузница.files/main.css" rel=stylesheet>
<script src="Кузница.files/char1.7.js"></SCRIPT>
<META content="MSHTML 6.00.2900.2180" name=GENERATOR></HEAD>
<BODY>
<H4>Просмотр боя</H4>
<TABLE cellPadding=5 width="100%">
<TBODY>
<TR vAlign=top>
<TD>Тип боя: [img]Кузница.files/404.htm[/img]
Таймаут: мин.
<HR class=hr1>
[b]Страницы:[/b] [url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=118"]<<[/url][url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=1"]...[/url][url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=105"]105[/url]
[url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=106"]106[/url]
[url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=107"]107[/url]
[url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=108"]108[/url]
[url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=109"]109[/url]
[url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=110"]110[/url]
[url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=111"]111[/url]
[url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=112"]112[/url]
[url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=113"]113[/url]
[url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=114"]114[/url]
[url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=115"]115[/url]
[url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=116"]116[/url]
[url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=117"]117[/url]
[url="http://neverfate.ru/logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&p=118"]118[/url]
[b]119[/b]
<HR class=hr1>
<INPUT class=btn onclick="this.disabled='true';window.navigate('logs.php?log=../../../../../../../../../usr/local/www/scripts/builds/223.php&'+Math.random()+'#end')" type=button value=Обновить>
<HR class=hr1>
<?
if($full_params['room']!=223) echo '<script>top.changeloc(top.oldlocation);</script>';
else{
$out='';
$kamni=array(
'ruby'=>0,
'silver'=>0, 'cuprum'=>0, 'diamond'=>0, 'emerald'=>0,
'gold'=>0, 'iron'=>0 ); $kamni_set=array( 'ruby'=>0,
'silver'=>0, 'cuprum'=>0, 'diamond'=>0, 'emerald'=>0,
'gold'=>0, 'iron'=>0 ); $hints=array( 'ruby'=>'рубин',
'silver'=>'серебро', 'cuprum'=>'медь', 'diamond'=>'алмаз',
'emerald'=>'изумруд', 'gold'=>'золотой самородок',
'iron'=>'железо' ); $set=$_GET['set']; $act=$_POST['act'];
$op='/usr/local/www/database/kuznitsa/'.$mycidis.'/objects';
$ip='/usr/local/www/database/kuznitsa/'.$mycidis.'/item';
if($act=='clear'){ $p='/usr/local/www/database/kuznitsa/'.$mycidis.'/';
if(is_dir($p)){ // so_rmfolder($p); rmfolder($p); $err='Действия
отменены.'; } else{ $err='Нечего отменять.'; } }
$shmots=unserialize(file_get_contents($self.'shmot/shmot'));
$b=parse_ini_file($self.'shmot/base.dat',true); foreach($b['other'] as $k1
=> $it1){ $l=$shmots[$it1]; $obj=$l['b_object'];
if(array_key_exists($obj,$kamni)){ $kamni[$obj]++; } } // if($set!=''){
$objects=parse_ini_file($op); $cnt=count($objects); if($objects===false)
$cnt=0; $flag=false; if($cnt<5){ for($i=0;$i<$cnt;$i++){
$obj_set=$shmots[$objects[$i]]; $kamni_set[$obj_set['b_object']]++; }
$p='/usr/local/www/database/kuznitsa/'.$mycidis.'/'; if(!is_dir($p))
mkdir($p); foreach($b['other'] as $k1 => $it1){ $l=$shmots[$it1];
$obj=$l['b_object']; if($obj==$set){ if($kamni_set[$set]<$kamni[$set]){
if(!in_array($it1,$objects)){ $objects[]=$it1;
write_ini_file($op,$objects); $err='Вы добавили "'.$l['d_descr'].'".';
$flag=true; } } else{ $err='Вы уже использовали все ресурсы данного
типа.'; } } if($flag) break; } } else{ $err='Можно добавить не более 5-ти
компонентов.'; } } // elseif($act=='set2'){ $sid=$_POST['sid'];
if(isset($shmots[$sid])&&!in_array($sid,$shmonchar)){
$l=$shmots[$sid]; if($l['class']=='fiz'||$l['b_object']=='artbag'){
$p='/usr/local/www/database/kuznitsa/'.$mycidis.'/'; if(!is_dir($p))
mkdir($p); so_qsave($ip,$sid); $err='Вы добавили "'.$l['d_descr'].'".'; }
else{ $err='С данным предметом нельзя производить никаких действий.'; } }
else{ $err='Предмет не найден в вашем инвентаре.'; } } //
elseif($act=='start'){ $sp=$self.'char.dat'; $glf=fopen($sp,'a');
flock($glf,LOCK_EX); $full_params=parse_ini_file($sp,true);
$objects=parse_ini_file($op); if(isset($objects[0])){
$item=file_get_contents($ip); if($item!=''){
if($shmots[$item]&&!in_array($item,$shmonchar)){
$l=$shmots[$item]; if($l['class']=='fiz'&&$l['s_remont']==1){
$of=fopen($self.'shmot/odeto','r+'); flock($of,LOCK_EX);
$odeto=unserialize(file_get_contents($self.'shmot/odeto'));
$g=$odeto['gun']; $gun=$g['b_object'];
if($gun=='kuzmolot1'||$gun=='kuzmolot2'||$gun=='kuzmolot3'||$gun=='kuzmolot4'){
if($full_params['Wear']<50){ $sf=fopen($self.'shmot/shmot','r+');
flock($sf,LOCK_EX);
$shmots=unserialize(file_get_contents($self.'shmot/shmot'));
$bf=fopen($self.'shmot/base.dat','r+'); flock($bf,LOCK_EX);
$lt=parse_ini_file($self.'shmot/base.dat',true);
if($l['any']['modifed']!=1||mt_rand(1,100)>770/($full_params['smith_lvl']+1)){
$cnt=0; $price=0; $weight=0; foreach($objects as $k => $sid){
if(isset($shmots[$sid])){ $cnt++; } } if($l['art']==1){
$costs=round($l['d_price']*$cnt/100,2); $kv=2; } else{
$costs=round($l['d_price']*$cnt/10,2); $kv=1; }
if($full_params['money']>=$costs){ reset($objects); foreach($objects as
$k => $sid){ if(isset($shmots[$sid])){ $o=$shmots[$sid];
$price+=$o['d_price']; $weight+=$o['d_weight']; switch($o['b_object']){
case 'ruby':{ $kamni['ruby']--; if(isset($l['mfparams']['p_maxudar'])){
$l['mfparams']['p_maxudar']+=5*$kv; $l['mfparams']['p_minudar']+=2*$kv;
if($l['any']['doptype']==''){ $l['any']['doptype']='ruby'; }
$l['any']['dopuron']+=1*$kv; $l['mfiznos']+=3; } break; } case 'silver':{
$kamni['silver']--; if(isset($l['mfparams']['p_maxudar'])){
$l['mfparams']['p_maxudar']+=2*$kv; $l['mfparams']['p_minudar']+=1*$kv;
$l['mfiznos']+=2; } break; } case 'gold':{ $kamni['gold']--;
$nn=$l['mfparams']; unset($nn['p_minudar']); unset($nn['p_maxudar']);
unset($nn['p_abselemprot']); unset($nn['p_abs']); unset($nn['p_rage']);
unset($nn['p_karm']); unset($nn['p_sarm']); unset($nn['p_intens']);
unset($nn['p_airabs']); unset($nn['p_waterabs']); unset($nn['p_fireabs']);
unset($nn['p_earthabs']); unset($nn['p_metalabs']); unset($nn['p_airs']);
unset($nn['p_waters']); unset($nn['p_fires']); unset($nn['p_earths']);
unset($nn['p_usil']); unset($nn['p_usilkrit']); unset($nn['p_uknife']);
unset($nn['p_usword']); unset($nn['p_uaxe']); unset($nn['p_ustick']);
unset($nn['p_uspear']); unset($nn['p_aknife']); unset($nn['p_asword']);
unset($nn['p_aaxe']); unset($nn['p_astick']); unset($nn['p_aspear']);
unset($nn['p_aair']); unset($nn['p_awater']); unset($nn['p_afire']);
unset($nn['p_aearth']); unset($nn['p_ametal']); unset($nn['p_magslot']);
unset($nn['p_agility']); unset($nn['p_walkspeed']);
unset($nn['p_volume']); unset($nn['p_chanceget']);
unset($nn['p_chancecr']); if(count($nn)>0){
$l['mfparams'][array_rand($nn)]+=5*$kv; $l['mfiznos']+=2; } break; } case
'emerald':{ $kamni['emerald']--; $cnt=count($l['params']); if($cnt>0){
if($cnt==1&&!(mt_rand(1,100)<50+$params['ps_luck'][0]/5))
$v=mt_rand(0,1); else $v=1;
$l['params'][array_rand($l['params'])]+=$v*$kv; $l['mfiznos']+=2; } break;
} case 'iron':{ $kamni['iron']--; $l['p_maxiznos']+=3*$kv;
$l['defiznos']=$l['p_maxiznos']; $l['mfiznos']+=2; break; } case
'diamond':{ $kamni['diamond']--; $l['mfiznos']-=5*$kv;
$l['mfremont']-=2*$kv; if($l['mfiznos']<1) $l['mfiznos']=1;
if($l['mfremont']<1) $l['mfremont']=1; break; } case 'cuprum':{
$kamni['cuprum']--; if($l['mfparams']['p_head']!='')
$l['mfparams']['p_head']+=2*$kv; if($l['mfparams']['p_body']!='')
$l['mfparams']['p_body']+=2*$kv; if($l['mfparams']['p_belt']!='')
$l['mfparams']['p_belt']+=2*$kv; if($l['mfparams']['p_legs']!='')
$l['mfparams']['p_legs']+=2*$kv; if($l['mfparams']['p_bair']!='')
$l['mfparams']['p_bair']+=2*$kv; if($l['mfparams']['p_bfire']!='')
$l['mfparams']['p_bfire']+=2*$kv; if($l['mfparams']['p_bwater']!='')
$l['mfparams']['p_bwater']+=2*$kv; if($l['mfparams']['p_bearth']!='')
$l['mfparams']['p_bearth']+=2*$kv; $l['mfiznos']+=2; break; } }
if(mt_rand(1,100)<=50-$full_params['smith_lvl']*1.5){ $nn=$l['needs'];
unset($nn['n_align']); unset($nn['n_sex']); unset($nn['n_name']);
unset($nn['n_clan']); if(count($nn)>0){
$l['needs'][array_rand($nn)]+=1; } } unset($shmots[$sid]);
unset($lt['other'][array_search($sid,$lt['other'])]);
tohistory($mycidis,8,'Вещь [b]'.$o['d_descr'].'[/b] ([b]'.$o['sid'].'[/b])
потрачена на перековку.','',''); } } } else{ $cnt=0; $err='У вас
недостаточно денег на перековку. Требуется '.$costs.' м.'; }
if($cnt>0){ $shmots['p']-=$price; $shmots['w']-=$weight;
$l['any']['modifed']=1; $shmots[$l['sid']]=$l;
if(mt_rand(1,100)<=$g['mfiznos']-$params['ps_luck'][0]/5){
$g['p_iznos']++; if($g['p_iznos']>=$g['p_maxiznos']) $crash=true; }
if($crash){ $odeto['gun']=''; serialize_write_f($of,$odeto);
unset($shmots[$g['sid']]); $shmots['p']-=$g['d_price'];
$shmots['w']-=$g['d_weight'];
unset($lt[$g['class']][array_search($g['sid'],$lt[$g['class']])]);
tohistory($mycidis,8,'Вещь [b]'.$g['d_descr'].'[/b] ([b]'.$g['sid'].'[/b])
уничтожена.','',''); $err='Ваша вещь [b]'.$g['d_descr'].'[/b] окончательно
испортилась!
'; } else{ $odeto['gun']=$g;
serialize_write_f($of,$odeto); } if($full_params['smith_lvl']<10){
if($smith_lvls[$full_params['smith_lvl']+1]<=$full_params['smith']+1)
$full_params['smith_lvl']++; $full_params['smith']++; }
$full_params['money']-=$costs; tohistory($mycidis,20,'На перековку
предмета [b]'.$l['d_descr'].'[/b] ([b]'.$l['sid'].'[/b]) потрачено
[b]'.$costs.'[/b] м.','',''); $err.='Предмет "'.$l['d_descr'].'"
перекован. На перековку потрачено '.$costs.' м.'; } } else{
unset($shmots[$l['sid']]); $shmots['p']-=$l['d_price'];
$shmots['w']-=$l['d_weight'];
unset($lt[$l['class']][array_search($l['sid'],$lt[$l['class']])]);
tohistory($mycidis,8,'Вещь [b]'.$l['d_descr'].'[/b] ([b]'.$l['sid'].'[/b])
испортилась в результате неудачной перековки.','',''); $err='Предмет
"'.$l['d_descr'].'" не выдержал повторной перековки и испортился.'; }
serialize_write_f($sf,$shmots); write_ini_file_f($bf,$lt);
flock($bf,LOCK_UN); fclose($bf); flock($sf,LOCK_UN); fclose($sf); } else{
$err='Вы не можете ковать, так как слишком устали.'; }
$full_params['Wear']+=26; if($full_params['Wear']>100)
$full_params['Wear']=100; write_ini_file_f($glf,$full_params); } else{
$err='Вы не одели кузнечный молоток.'; } flock($of,LOCK_UN); fclose($of);
} else{ $err='Предмет данного типа нельзя модифицировать.'; } } else{
$err='Предмет не найден в вашем инвентаре.'; } } else{ $err='Не выбран
предмет для обработки. '; } } else{ $err='Нет ресурсов для обработки.'; }
$p='/usr/local/www/database/kuznitsa/'.$mycidis.'/'; if(is_dir($p)){
rmfolder($p); } flock($glf,LOCK_UN); fclose($glf); } //
elseif($act=='upgrade'){ $upgrades=array( 'aicsword'=>array( 5, array(
'params'=>array('ps_dex'=>10,'ps_inst'=>10),
'mfparams'=>array('p_krit'=>120,'p_antiuvorot'=>100,'p_minudar'=>40,'p_maxudar'=>50,'p_usword'=>5,'p_usilkrit'=>5),
'masters'=>array('p_sword'=>10), 'magmasters'=>array(),
'auras'=>array(), 'needs'=>array('n_level'=>15,'n_inst'=>80),
'any'=>array() ), 100 ), 'prsword'=>array( 3, array(
'params'=>array(),
'mfparams'=>array('p_krit'=>50,'p_minudar'=>35,'p_maxudar'=>45,'p_usil'=>10),
'masters'=>array('p_sword'=>5), 'magmasters'=>array(),
'auras'=>array(), 'needs'=>array('n_level'=>8,'n_dex'=>40),
'any'=>array() ), 100 ), 'trebaxe'=>array( 3, array(
'params'=>array(),
'mfparams'=>array('p_minudar'=>30,'p_maxudar'=>40),
'masters'=>array('p_axe'=>5), 'magmasters'=>array(),
'auras'=>array(), 'needs'=>array('n_level'=>5), 'any'=>array()
), 100 ), 'otcaxe'=>array( 3, array( 'params'=>array(),
'mfparams'=>array('p_minudar'=>30,'p_maxudar'=>40,'p_uvorot'=>60),
'masters'=>array('p_axe'=>5), 'magmasters'=>array(),
'auras'=>array(), 'needs'=>array('n_level'=>5,'n_str'=>30),
'any'=>array() ), 100 ), 'perekosaxe'=>array( 5, array(
'params'=>array('ps_dex'=>5,'ps_str'=>10),
'mfparams'=>array('p_antikrit'=>80,'p_uvorot'=>120,'p_minudar'=>40,'p_maxudar'=>50,'p_kontr'=>15,'p_antikontr'=>50,'p_usil'=>5),
'masters'=>array('p_axe'=>10), 'magmasters'=>array(),
'auras'=>array(), 'needs'=>array('n_level'=>15,'n_str'=>80),
'any'=>array() ), 100 ), 'poweraxe'=>array( 5, array(
'params'=>array('ps_dex'=>8,'ps_inst'=>10),
'mfparams'=>array('p_krit'=>100,'p_antiuvorot'=>90,'p_minudar'=>40,'p_maxudar'=>55,'p_usilkrit'=>5,'p_uaxe'=>5),
'masters'=>array('p_axe'=>10), 'magmasters'=>array(),
'auras'=>array(), 'needs'=>array('n_level'=>15,'n_inst'=>80),
'any'=>array() ), 100 ), 'eposknife'=>array( 5, array(
'params'=>array('ps_dex'=>5),
'mfparams'=>array('p_uvorot'=>50,'p_kontr'=>50,'p_minudar'=>35,'p_maxudar'=>50,'p_uknife'=>5,'p_karm'=>5),
'masters'=>array('p_knife'=>10), 'magmasters'=>array(),
'auras'=>array(),
'needs'=>array('n_level'=>10,'n_dex'=>70,'n_pow'=>50),
'any'=>array() ), 100 ), 'svetstick'=>array( 5, array(
'params'=>array('ps_dex'=>5,'ps_inst'=>5),
'mfparams'=>array('p_krit'=>150,'p_antikrit'=>80,'p_antikontr'=>90,'p_minudar'=>40,'p_maxudar'=>60,'p_ustick'=>5,'p_usilkrit'=>5,'p_karm'=>5),
'masters'=>array('p_stick'=>10), 'magmasters'=>array(),
'auras'=>array(),
'needs'=>array('n_level'=>15,'n_dex'=>80,'n_inst'=>80,'n_pow'=>60),
'any'=>array() ), 100 ), 'ostrhelmet'=>array( 3, array(
'params'=>array('ps_dex'=>5),
'mfparams'=>array('p_krit'=>150,'p_head'=>25,'p_pow'=>30),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>5,'n_inst'=>40) ), 100 ),
'chekhelmet'=>array( 3, array( 'params'=>array('ps_inst'=>5),
'mfparams'=>array('p_antikrit'=>150,'p_head'=>50,'p_pow'=>100,'p_bearth'=>35,'p_bwater'=>35,'p_bair'=>35,'p_bfire'=>35),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>5,'n_str'=>40) ), 100 ),
'kolphelmet'=>array( 5, array( 'params'=>array('ps_intel'=>20),
'mfparams'=>array('p_antikrit'=>150,'p_uvorot'=>100,'p_head'=>50,'p_intens'=>5,'p_abselemprot'=>10,'p_mana'=>150),
'masters'=>array('p_crosier'=>10),
'magmasters'=>array('p_earth'=>10,'p_water'=>10,'p_air'=>10,'p_fire'=>10),
'auras'=>array(), 'needs'=>array('n_level'=>15,'n_mana'=>50)
), 100 ), 'screamhelmet'=>array( 5, array(
'params'=>array('ps_inst'=>10,'ps_str'=>10),
'mfparams'=>array('p_antikrit'=>100,'p_antiuvorot'=>150,'p_head'=>70,'p_antikontr'=>80,'p_pow'=>200,'p_rage'=>10,'p_powspeed'=>10),
'masters'=>array(), 'magmasters'=>array(),
'auras'=>array('shield'=>1,'elemprot'=>1),
'needs'=>array('n_level'=>15,'n_inst'=>80,'p_str'=>35,'p_pow'=>60)
), 100 ), 'artbag'=>array( 1, array( 'params'=>array(),
'mfparams'=>array('p_minudar'=>1,'p_maxudar'=>5,'p_invup'=>400),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>10) ), 50 ), 'travring'=>array( 2,
array( 'params'=>array(), 'mfparams'=>array('p_antikrit'=>80),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>10) ), 100 ), 'pogring'=>array( 2,
array( 'params'=>array(), 'mfparams'=>array('p_airabs'=>5),
'masters'=>array(), 'magmasters'=>array('p_fire'=>15),
'auras'=>array(), 'needs'=>array('n_level'=>10,'n_fire'=>50)
), 100 ), 'sohring'=>array( 2, array( 'params'=>array(),
'mfparams'=>array('p_fireabs'=>5), 'masters'=>array(),
'magmasters'=>array('p_water'=>15), 'auras'=>array(),
'needs'=>array('n_level'=>10,'n_water'=>50) ), 100 ),
'serebring'=>array( 2, array( 'params'=>array(),
'mfparams'=>array('p_waterabs'=>5), 'masters'=>array(),
'magmasters'=>array('p_earth'=>15), 'auras'=>array(),
'needs'=>array('n_level'=>10,'n_earth'=>50) ), 100 ),
'vetrring'=>array( 2, array( 'params'=>array(),
'mfparams'=>array('p_earthabs'=>5), 'masters'=>array(),
'magmasters'=>array('p_air'=>15), 'auras'=>array(),
'needs'=>array('n_level'=>10,'n_air'=>50) ), 100 ),
'kovring'=>array( 3, array( 'params'=>array('ps_inst'=>7),
'mfparams'=>array('p_krit'=>70,'p_usil'=>2,'p_pow'=>16),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>10,'n_inst'=>70,'n_pow'=>50) ), 100
), 'magmring'=>array( 1, array( 'params'=>array('ps_dex'=>15),
'mfparams'=>array(), 'masters'=>array(), 'magmasters'=>array(),
'auras'=>array(), 'needs'=>array('n_level'=>10,'n_dex'=>50) ),
100 ), 'nring'=>array( 3, array( 'params'=>array('ps_intel'=>30),
'mfparams'=>array('p_bair'=>15,'p_bearth'=>15,'p_bfire'=>15,'p_bwater'=>15,'p_manaspeed'=>10),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>15,'n_intel'=>70) ), 100 ),
'ringpow'=>array( 5, array( 'params'=>array('ps_intel'=>10),
'mfparams'=>array('p_antikrit'=>40,'p_abs'=>3,'p_pow'=>250,'p_mana'=>100,'p_intens'=>2,'p_powspeed'=>5,'p_manaspeed'=>10),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>15,'n_intel'=>70) ), 50 ),
'contemptring'=>array( 4, array(
'params'=>array('ps_dex'=>5,'ps_inst'=>5),
'mfparams'=>array('p_antikrit'=>50,'p_antimkrit'=>30,'p_muvorot'=>30,'p_antiuvorot'=>25,'p_pow'=>35,'p_rage'=>3,'p_karm'=>3,'p_earthabs'=>10,'p_fireabs'=>10,'p_waterabs'=>10,'p_airabs'=>10),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>15,'n_inst'=>80) ), 50 ),
'retributionbraslet'=>array( 5, array(
'params'=>array('ps_dex'=>5,'ps_intel'=>20),
'mfparams'=>array('p_mkrit'=>70,'p_antimuvorot'=>60,'p_abselemprot'=>60,'p_pow'=>250,'p_mana'=>250,'p_manaspeed'=>10,'p_sarm'=>5),
'masters'=>array(), 'magmasters'=>array(),
'auras'=>array('elemprot'=>3),
'needs'=>array('n_level'=>15,'n_intel'=>80) ), 100 ),
'braceletbloody'=>array( 5, array(
'params'=>array('ps_dex'=>5,'ps_str'=>15,'ps_inst'=>15,'ps_intel'=>15,'ps_luck'=>10),
'mfparams'=>array('p_krit'=>60,'p_usil'=>10,'p_usilkrit'=>10,'p_minudar'=>20,'p_maxudar'=>30,'p_pow'=>250,'p_antiuvorot'=>100),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>15,'n_inst'=>80),
'any'=>array('doptype'=>'bloody','dopuron'=>20) ), 100 ),
'varvarshield'=>array( 5, array(
'params'=>array('ps_dex'=>15,'ps_inst'=>10,'ps_intel'=>5),
'mfparams'=>array('p_krit'=>80,'p_antikrit'=>60,'p_antimkrit'=>80,'p_pow'=>100,'p_antiuvorot'=>80,'p_head'=>80,'p_body'=>80,'p_belt'=>80,'p_legs'=>80,'p_sarm'=>20),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>15,'n_dex'=>70) ), 100 ),
'mershield'=>array( 5, array( 'params'=>array('ps_intel'=>20),
'mfparams'=>array('p_mkrit'=>60,'p_antikrit'=>80,'p_muvorot'=>100,'p_pow'=>80,'p_mana'=>100,'p_head'=>40,'p_body'=>40,'p_belt'=>40,'p_legs'=>40,'p_bair'=>60,'p_bfire'=>60,'p_bearth'=>60,'p_bwater'=>60),
'masters'=>array(),
'magmasters'=>array('p_fire'=>10,'p_water'=>10,'p_air'=>10,'p_earth'=>10),
'auras'=>array(),
'needs'=>array('n_level'=>15,'n_intel'=>80,'n_mana'=>50) ),
100 ), 'steelboots'=>array( 5, array(
'params'=>array('ps_dex'=>20,'ps_inst'=>10),
'mfparams'=>array('p_krit'=>150,'p_antiuvorot'=>150,'p_antikontr'=>50,'p_pow'=>100,'p_minudar'=>10,'p_maxudar'=>20,'p_legs'=>70),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>15,'n_inst'=>80,'n_dex'=>70),
'any'=>array() ), 100 ), 'mayboots'=>array( 5, array(
'params'=>array('ps_dex'=>15,'ps_str'=>20),
'mfparams'=>array('p_antikrit'=>100,'p_uvorot'=>200,'p_antiuvorot'=>100,'p_pow'=>80,'p_legs'=>70),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>15,'n_str'=>80,'n_dex'=>60) ), 100
), 'pokrboots'=>array( 5, array( 'params'=>array('ps_intel'=>30),
'mfparams'=>array('p_mkrit'=>100,'p_antikrit'=>80,'p_antimuvorot'=>120,'p_mana'=>100,'p_legs'=>50),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>15,'n_intel'=>90,'n_mana'=>50) ),
100 ), 'impentalisman'=>array( 5, array(
'params'=>array('ps_dex'=>4,'ps_str'=>6,'ps_inst'=>4),
'mfparams'=>array('p_antikrit'=>60,'p_antiuvorot'=>55,'p_krit'=>35,'p_mana'=>70,'p_head'=>40,'p_body'=>40,'p_belt'=>40,'p_legs'=>40),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>15,'n_dex'=>100) ), 50 ),
'deeptalisman'=>array( 5, array( 'params'=>array('ps_intel'=>5),
'mfparams'=>array('p_antikrit'=>35,'p_mkrit'=>60,'p_antimkrit'=>80,'p_antimuvorot'=>30,'p_manaspeed'=>4,'p_pow'=>50,'p_mana'=>100,'p_head'=>20,'p_body'=>20,'p_belt'=>20,'p_legs'=>20),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>15,'n_intel'=>100) ), 50 ),
'pestrarmor'=>array( 10, array( 'params'=>array('ps_intel'=>20),
'mfparams'=>array('p_mkrit'=>150,'p_antikrit'=>250,'p_antimkrit'=>150,'p_antimuvorot'=>100,'p_body'=>60,'p_belt'=>60,'p_bair'=>80,'p_bfire'=>80,'p_bwater'=>80,'p_bearth'=>80,'p_mana'=>300,'p_pow'=>200,'p_abs'=>15,'p_muvorot'=>150),
'masters'=>array(),
'magmasters'=>array('p_fire'=>15,'p_earth'=>15,'p_water'=>15,'p_air'=>15),
'auras'=>array('elemprot'=>2),
'needs'=>array('n_level'=>15,'n_intel'=>100,'n_mana'=>50) ),
100 ), 'greatnessbelt'=>array( 5, array(
'params'=>array('ps_dex'=>10,'ps_inst'=>10),
'mfparams'=>array('p_krit'=>80,'p_antikrit'=>80,'p_antimkrit'=>80,'p_antiuvorot'=>80,'p_muvorot'=>75,'p_belt'=>60,'p_bair'=>30,'p_bfire'=>30,'p_bwater'=>30,'p_bearth'=>30,'p_mana'=>200,'p_pow'=>300,'p_magslot'=>3),
'masters'=>array(), 'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>15,'n_dex'=>100,'n_inst'=>100) ),
100 ), 'elegantbelt'=>array( 5, array(
'params'=>array('ps_intel'=>10),
'mfparams'=>array('p_mkrit'=>65,'p_antikrit'=>80,'p_antimuvorot'=>90,'p_muvorot'=>85,'p_belt'=>50,'p_bair'=>15,'p_bfire'=>15,'p_bwater'=>15,'p_bearth'=>15,'p_mana'=>300,'p_pow'=>100,'p_magslot'=>3),
'masters'=>array(),
'magmasters'=>array('p_fire'=>7,'p_earth'=>7,'p_water'=>7,'p_air'=>7),
'auras'=>array(),
'needs'=>array('n_level'=>15,'n_intel'=>100,'n_mana'=>55) ),
100 ), 'kolosamulet'=>array( 5, array( 'params'=>array(),
'mfparams'=>array('p_airabs'=>60,'p_waterabs'=>60,'p_fireabs'=>60,'p_earthabs'=>60,'p_agility'=>5,'p_antimkrit'=>100,'p_muvorot'=>50),
'masters'=>array(), 'magmasters'=>array(),
'auras'=>array('elemprot'=>6), 'needs'=>array('n_level'=>15)
), 50 ), 'koncengloves'=>array( 10, array( 'params'=>array(),
'mfparams'=>array('p_krit'=>150,'p_antimkrit'=>250,'p_uvorot'=>150,'p_rage'=>10,'p_pow'=>400,'p_antiuvorot'=>100,'p_agility'=>5,'p_mana'=>100,'p_antikrit'=>100,'p_minudar'=>5,'p_maxudar'=>10),
'masters'=>array('p_knife'=>15,'p_sword'=>15,'p_axe'=>15,'p_stick'=>15,'p_spear'=>15),
'magmasters'=>array(), 'auras'=>array(),
'needs'=>array('n_level'=>15) ), 100 ) ); $sp=$self.'char.dat';
$glf=fopen($sp,'a'); flock($glf,LOCK_EX);
$full_params=parse_ini_file($sp,true); $item=file_get_contents($ip);
if($item!=''){ $sf=fopen($self.'shmot/shmot','r+'); flock($sf,LOCK_EX);
$shmots=unserialize(file_get_contents($self.'shmot/shmot'));
if(isset($shmots[$item])&&!in_array($item,$shmonchar)){
$l=$shmots[$item]; if($l['art']==1){ $list=$upgrades[$l['b_object']];
if(is_array($list)){ $cntneeds=$list[0]; if($kamni['ruby']>=$cntneeds){
$kills=0; $bp=$self.'shmot/base.dat'; $bf=fopen($bp,'a');
flock($bf,LOCK_EX); $b=parse_ini_file($bp,true); $histmsg=array();
$od='[b]'.$l['d_descr'].'[/b] ([b]'.$l['sid'].'[/b])'; foreach($b['other']
as $k1 => $it1){ $tl=$shmots[$it1]; if($tl['b_object']=='ruby'){
$kills++; unset($shmots[$it1]); unset($b['other'][$k1]);
$histmsg[]=$gl_time.';8;Вещь [b]Рубин[/b] ([b]'.$it1.'[/b]) потрачена на
обновление предмета '.$od.';;'; } if($kills==$cntneeds) break; }
if($cntneeds==$kills){ $shmots['p']-=($kills*$tl['d_price']);
$shmots['w']-=($kills*$tl['d_weight']);
so_append($self.'hist'.date('Y_m',$gl_time),implode("\n",$histmsg));
write_ini_file_f($bf,$b); $prog=$list[1]; $l['params']=$prog['params'];
$l['mfparams']=$prog['mfparams']; $l['masters']=$prog['masters'];
$l['magmasters']=$prog['magmasters']; $l['auras']=$prog['auras'];
$l['needs']=$prog['needs']; $l['needs']['n_name']=$mynameis;
if(isset($l['any'])){ $l['any']=$prog['any']; $l['any']['modifed']=0; }
$l['p_iznos']=0; if($l['p_maxiznos']>$list[2])
$l['p_maxiznos']=$list[2]; $shmots[$l['sid']]=$l;
serialize_write_f($sf,$shmots); $kamni['ruby']-=$cntneeds; $err='Предмет