<?
class Shop{
static private $instance = NULL;
public $data = array();
public $userData = false;
public $dataIcon = 10;
static function a(){
if(self::$instance==NULL)self::$instance=new Shop();
return self::$instance;
}
public function __construct(){
$this->data[1] = array( 'name' => 'Банкомат',
'eng' => 'Bankomat',
'price' => array(0,150,1,3,5,10,25,50,100,150,250,500,500,500,500,1000,1000,1000,1000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,3000,3000,3000,3000,3000,3000,3000,3000,3000,3000),
'effect' => array(0,1,2,3,4,5,6,8,10,12,14,16,19,22,25,29,33,37,42,47,52,58,64,70,76,82,88,95,102,109,116,123,130,137,147,157,167,177,197,217,237),
'title' => 'отличный финансовый помощник',
'job' => 'Увеличивает лимит баксов для обмена',
'info' => 'Каждый уровень банкомата (с 1-го по 6-й) увеличивает лимит на 1 бакс<br>
с 7-го по 11-й увеличивает лимит на 2 бакса<br>
с 12-го по 14-й увеличивает лимит на 3 бакса<br>
с 15-го по 17-й увеличивает лимит на 4 бакса<br>
с 18-го по 20-й увеличивает лимит на 5 баксов<br>
с 21-го по 26-й увеличивает лимит на 6 баксов<br>
с 27-го по 33-й увеличивает лимит на 7 баксов<br>
с 34-го по 37-й увеличивает лимит на 10 баксов<br>
с 38-го по 40-й увеличивает лимит на 20 баксов<br><br>
Таким образом,Банкомат 40-го уровня увеличит лимит обмена на 237 бакса');
$this->data[] = array( 'name' => 'Касса',
'eng' => 'Kassa',
'price' => array(0,150,1,3,5,10,25,50,100,150,250,500,500,500,500,1000,1000,1000,1000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,3000,3000,3000,3000,3000,3000,3000,3000,3000,3000),
'effect' => array(0,0.05,0.1,0.15,0.2,0.25,0.3,0.4,0.5,0.6,0.7,0.8,1,1.2,1.4,1.7,2,2.3,2.7,3.1,3.5,4.1,4.7,5.3,5.9,6.5,7.1,7.9,8.7,9.6,10.4,11.2,12,13,14,15,16,17,18,19,20),
'title' => 'помощник в сборе дохода с Лунапарка',
'job' => 'Позволяет собрать доход со всех аттракционов одним кликом',
'info' => 'Каждый уровень Кассы (с 1-го по 6-й) увеличивает доход на 5%.<br>
с 7-го по 11-й на 10%<br>
с 12-го по 14-й на 20%<br>
с 15-го по 17-й на 30%<br>
с 18-го по 20-й на 40%<br>
с 21-го по 26-й на 60%<br>
с 27-го по 32-й на 80%<br>
с 33-го по 40-й на 100%<br><br>
Таким образом,Касса 40-го уровня увеличит доход на 2000%');
$this->data[] = array( 'name' => 'Мастерская',
'eng' => 'Masterskaya',
'price' => array(0,200),
'effect' => array(0,0),
'title' => 'помощник по ремонту аттракционов в Лунапарке',
'job' => 'Позволяет отремонтировать все аттракционы одним кликом',
'info' => NULL);
$this->data[] = array( 'name' => 'Звонок',
'eng' => 'Zvonok',
'price' => array(0,250,20,40,80,140,200,300,450,600,800,1100,1400,1700,2000,2500,3000,4000,5000,7000,9000),
'effect' => array(0,1,2,3,4,5,6,8,10,12,14,16,18,20,22,25,28,31,34,37,40),
'title' => 'помощник по приему заказов в Торговле',
'job' => 'Позволяет принять заказы для свободных мест в торговле одним кликом',
'info' => 'Каждый уровень Звонок (с 1-го по 6-й) увеличивает торговое мастерство за выполненный заказ на 1 ед.<br>
с 7-го по 14-й на 2 ед.<br>
с 15-го по 20-й на 3 ед.<br><br>
Таким образом,Звонок 20-го уровня увеличит торговое мастерство за каждый выполненный заказ на 40 ед.');
$this->data[] = array( 'name' => 'Раздатчик',
'eng' => 'Razdat',
'price' => array(0,150,5,15,45,100,180,260,320,400,500,600,800,1000,1500,2000,2500,3000,4000,5000,6000),
'effect' => array(0,0.05,0.1,0.15,0.2,0.25,0.3,0.4,0.5,0.6,0.7,0.8,1,1.2,1.4,1.7,2,2.3,2.7,3.1,3.5),
'title' => 'помощник по выдаче заказов в Торговле',
'job' => 'Позволяет все заказы одним кликом',
'info' => 'Каждый уровень Раздатчика (с 1-го по 6-й) увеличивает доход с торговли на 5%.<br>
с 7-го по 11-й на 10%<br></p>
с 12-го по 14-й на 20%<br></p>
с 15-го по 17-й на 30%<br></p>
с 18-го по 20-й на 40%<br><br></p>
Таким образом,Раздатчика 20-го уровня увеличит доход на 350%');
$this->data[] = array( 'name' => 'Мультиварка',
'eng' => 'Multi',
'price' => array(0,150,5,15,45,100,180,260,320,400,500,600,800,1000,1500,2000,2000,2000,2000,2000,2000),
'effect' => array(0,0.05,0.1,0.15,0.2,0.25,0.3,0.4,0.5,0.6,0.7,0.8,1,1.2,1.4,1.7,2,2.3,2.7,3.1,3.5),
'title' => 'помощник по приготовлению порций в Торговле',
'job' => 'Позволяет приготовить все порции одним кликом',
'info' => 'Каждый уровень Мультиварки (с 1-го по 6-й) увеличивает опыт за приготовление на 5%.<br>
с 7-го по 11-й на 10%<br></p>
с 12-го по 14-й на 20%<br></p>
с 15-го по 17-й на 30%<br></p>
с 18-го по 20-й на 40%<br><br></p>
Таким образом,Мультиварки 20-го уровня увеличит опыт на 350%');
$this->data[] = array( 'name' => 'Рецепшн',
'eng' => 'plos',
'price' => array(0,150,5,15,45,100,180,260,320,400,500,600,800,1000,1500,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,2000,3000,3000,3000,3000,3000,3000,3000,3000,3000,3000),
'effect' => array(0,1,2,3,4,5,6,8,10,12,14,16,18,20,22,25,28,31,34,37,40,45,50,55,60,65,70,75,80,85,90,100,110,120,130,140,150,160,170,180,190),
'title' => 'помощник по приему посетителей в Тендере',
'job' => 'Позволяет принять всех посетителей кликом',
'info' => 'Каждый уровень Рецепшн (с 1-го по 6-й) увеличивает количество посетителей на 1<br>
с 7-го по 14-й на 2<br>
с 15-го по 20-й на 3<br>
с 21-го по 30-й на 5<br>
с 31-го по 40-й на 10<br><br>
Таким образом,Рецепшн 40-го уровня увеличит количество посетителей на 190');
$this->data[] = array( 'name' => 'Пускатель',
'eng' => 'pusk',
'price' => array(0,150,5,15,45,100,180,260,320,400,500,600,800,1000,1500,2000,2000,2000,2000,2000,2000),
'effect' => array(0,0.05,0.1,0.15,0.2,0.25,0.3,0.4,0.5,0.6,0.7,0.8,1,1.2,1.4,1.7,2,2.3,2.7,3.1,3.5),
'title' => 'помощник по запуску аттракционов в Тендере',
'job' => 'Позволяет запустить все аттракционы в Тендере одним кликом',
'info' => 'Каждый уровень Пускателя (с 1-го по 6-й) увеличивает опыт в Тендере на 5%.<br>
с 7-го по 11-й на 10%<br></p>
с 12-го по 14-й на 20%<br></p>
с 15-го по 17-й на 30%<br></p>
с 18-го по 20-й на 40%<br><br></p>
Таким образом,Пускателя 20-го уровня увеличит опыт в Тендере на 350%');
$this->data[] = array( 'name' => 'Зал репетиций',
'eng' => 'zal',
'price' => array(0,250,5,25,50,100,250,500,1000,1000,1000,2500,2500,2500,5000,5000,5000,10000,10000,20000,20000),
'effect' => array(0,0.01,0.02,0.03,0.04,0.05,0.06,0.08,0.1,1.2,1.4,1.6,1.9,2.2,2.5,2.9,3.3,3.7,4.7,5.7,6.7),
'title' => 'площадка для репетиций артистов',
'job' => 'Позволяет начинать репетицию одним кликом',
'info' => 'Каждый уровень Зала репетиций (с 1-го по 6-й) сокращает время репетиции на 1%.<br>
с 7-го по 11-й на 2%<br></p>
с 12-го по 14-й на 3%<br></p>
с 15-го по 17-й на 4%<br></p>
с 18-го по 20-й на 10%<br><br></p>
Таким образом,Зал репетиций 20-го уровня сократит время репетиции на 67%');
return true;
}
public function getLinkTech($data=false){
$dataShop = $this->data;
$link = array();
if($data!==false){
$dataShop = json_decode($data['dataShop'],true);
foreach($dataShop as $key => $value){
if($value['level']>0){
$link[] = '<div><a class="link4" href="/Shop/Tech/'.$value['id'].'/">
<img src="/img/shop/'.$key.'_small.png" style="margin-right:3px;width:16px">'.$this->data[$value['id']]['name'].'</a>
<span class="minor">('.$value['level'].' ур.)</span></div>';
}
}
}else{
foreach($dataShop as $key => $value){
$link[] = '<div><a class="link4" href="/Shop/Tech/'.$key.'/">
<img src="/img/shop/'.$value['eng'].'_small.png" style="margin-right:3px;width:16px">'.$value['name'].'</a></div>';
}
}
return $link;
}
public function getPriceTech($id){
$id = abs(intval($id));
if(!array_key_exists($id,$this->data))return false;
$tech = json_decode(User::a()->user['dataShop'],true);
$level = $tech[$this->data[$id]['eng']]['level']+1;
$donate = $this->data[$id]['price'][$level];
return array('id'=>$id,'name'=>$this->data[$id]['name'],'donate'=>$donate,'tech'=>$tech,'level'=>$level,'maxlevel'=>count($this->data[$id]['price']));
}
public function buy($id){
$data = $this->getPriceTech($id);
if($data['level']==$this->data[$id]['price'])return false;
if(User::a()->user['vip']==1){
$data['donate'] = $data['donate'] - floor($data['donate']*0.7);
}
/*****************************************//////////////
if(User::a()->user['donate']< $data['donate']){
$_SESSION['info']='Не хватает <img src="/img/icons/donate.png" style="margin-right:2px;width:18px">'.($data['donate']-User::a()->user['donate']);
return false;
}
$text = "Купил ".$this->data[$id]['name']." (".($data['tech'][$this->data[$id]['eng']]['level']+1)." ур.) за <img src='/img/icons/donate.png' style='margin-right:2px;width:14px'>".$data['donate'];
User::a()->addLog($text);
$data['tech'][$this->data[$id]['eng']]['id'] = $id;
$data['tech'][$this->data[$id]['eng']]['level'] += 1;
User::a()->user['dataShop'] = json_encode($data['tech']);
User::a()->user['donate'] -= $data['donate'];
return true;
}
public function showInfoTech($id){
$id = abs(intval($id));
if(!array_key_exists($id,$this->data))return false;
return $this->data[$id];
}
public function showPriceTech($id){
$id = abs(intval($id));
if(!array_key_exists($id,$this->data))return false;
$tech = json_decode(User::a()->user['dataShop'],true);
$level = $tech[$this->data[$id]['eng']]['level']+1;
$word = 'Купить';
if($level==count($this->data[$id]['price'])){
return '<div class="minor"><img src="/img/jobs/clean.png" style="margin-right:2px;width:18px">Максимально улучшено</div>';
}
$price = $this->data[$id]['price'][$level];
if(User::a()->user['vip']==1){
$price = $price - floor($price*0.7);
}
/***********************//////////////
return '<div class="minor"><a class="link4" href="/Shop/Tech/'.$id.'/Buy/">
<img src="/img/jobs/clean.png" style="margin-right:2px;width:18px">'.$word.'</a> <span class="mess">'.$level.' уровень</span>
(<img src="/img/icons/donate.png" style="margin-right:2px;width:18px">'.$price.')</div>';
}
}