Магазин оружия для FPS KIT, MFPS для ВК игр[ИСХОДНЕГ!].

Магазин оружия для FPS KIT, MFPS для ВК игр[ИСХОДНЕГ!].

Сообщение ikhtd 13 апр 2015, 13:20

СРАЗУ СКАЖУ ЧТОБ КО МНЕ НЕ БЫЛО ПОТОМ ПРЕТЕНЗИЙ -
ЭТОТ МАГАЗИН ДЛЯ ХОСТИНГА НЕ ПОТЯНЕТ!!! ВАС СРАЗУ ЖЕ ЗАБАНЯТ НА ХОСТИНГЕ, ИЗ ЗА НАГРУЗКИ НА ПРОЦЕССОР НА РЕАЛЬНОЙ ИГРЕ ВК- ГДЕ ЕСТЬ ИГРОКИ!!! ТОЛЬКО VPS!! МАГАЗИН НЕ ОПТИМИЗИРОВАН - НАГРУЗКУ СОЗДАДУТ PHP СКРИПТЫ. (или по оперативе или по процу - не помню)

Хоччу поделиться магазином для контры пока не интегрировал его в игру. И тогда там будут изменения что его уже не дашь никому.
Магазин для 5 категорий оружия как в мфпс ГУИ решение магазина привязанное к базе. Индикация куплено-некуплено и установка в инвентарь текущего (по кнопке вооружиться).
Это подходит как для FPS KIT, так и для MFPS - потому что они сделаны почти одинаково по реализации оружия от первого лица. Процес интеграции -инвентаря магазина что в FPS KIT что в MFPS одинаковый.
Исходник взят с этого форума - просто я его конкретно начал делать под русскую игру. К исходнику идет большое описание по установке автора незаконченное - но довольно полное ReadME Рид ми есть в архиве. (кодировку страницы чуть то поменятйте)

Демо видно только зарегестрированным пользователям.
Вначале внизу нажать кнопку NextID -затем нажать клавишу М- чтобы вызвать магазин. ID =test не менять - можно использовать только ай ди из ВК. База используется та что прикреплена в архиве. Окошки можно таскать. Установка в инвентарь текущего (по кнопке вооружиться - если оно куплено).

HTML код для вашего блога :
Код: Выделить всё
<script language='javascript' type="text/javascript"> document.write("<iframe marginheight='0' src='http://unity3d.ru/distribution/player.php?url=http://unity3d.ru/distribution/download/file.php?id=7565&w=900&h=600&t=true&preview=1' height='"+(600+30)+"' width='900' frameborder='0' scrolling='no'></iframe>"); </script>


Также я тут даю все таблицы как есть из моей игры- чтобы не запутаться. таблицы уже заполненные юзерами вк. Я их даже не буду чистить - просто експортирую. Каждая таблица на 20к юзеров. Все таблицы ложаться в одну базу. Таблица cobrausers для регистрации игроков. Для каждой категории оружия своя таблица - 5 категорий.

Magazine Tables.rar



И также даю все неправленные php скрипты - так как они есть на данный момент(не убраны пароли) Все скрипты ложатся в одну папку

phpmagazine.rar


Также в первоначальном исходнике есть даже какие то скрипты для админки БД. Я их тут не заливал они в архиве прикрепленном.


И непосредственно оригинальный Исходник Инвентаря - то что в демо. В исходнике посталены правильные пути на php скрипты - то что в демо. Unity v.4.6.1 но легко переставить на старую 4.0...

PBInventory Cobra 1.03.rar


Самое главное забыл. Какой я использую php скрипт регистрации игрока в вк. Я его в архиве не приложил - забыл- поэтому полностью напишу здесь. Этот тот самый скрипт который зарегестрирует нового игрока в таблицу для регистрации cobrausers (она есть в архиве)

registration.php
Синтаксис:
Используется javascript
<?php

$idk = $_POST['ids'];
$passw = $_POST['mepass'];

$fname = $_POST['mefname'];
$sname = $_POST['mesname'];

$pkill = $_POST['mykill'];
$pdeath = $_POST['mydeath'];
$ppoints = $_POST['mysss'];

//Connecting to database

$connect = mysql_connect("myserver", "myusername", "mypass");

if(!$connect){

die(mysql_error());

}


//Selecting database

$select_db = mysql_select_db("databasename", $connect);

if(!$select_db){

die(mysql_error());

}


//Let's check if this idkon is already in use

$id_check = mysql_query("SELECT idkon FROM cobrausers WHERE idkon='$idk'");

$do_id_check = mysql_num_rows($id_check);

if($do_id_check > 0){

//   die("Username is already in use!<br>");
   $select = mysql_query("SELECT * FROM cobrausers WHERE idkon='$idk'");

   $row2 = mysql_fetch_array($select);

   $key1 = $row2['kills'];
   if ($key1 < $pkill){
         $result = mysql_query("SELECT * FROM cobrausers WHERE idkon ='$idk'");
            $result = mysql_query ("UPDATE cobrausers SET kills='$pkill' WHERE idkon ='$idk'");

      echo $pkill."/";
    }
    else
     echo $key1."/";
   

   $key2 = $row2['death'];
   
    if ($key2 < $pdeath){
         $result = mysql_query("SELECT * FROM cobrausers WHERE idkon ='$idk'");
            $result = mysql_query ("UPDATE cobrausers SET death='$pdeath' WHERE idkon ='$idk'");

      echo $pdeath."/";
    }
    else
     echo $key2."/";


     $key3 = $row2['points'];

      if ($key3 < $ppoints){
         $result = mysql_query("SELECT * FROM cobrausers WHERE idkon ='$idk'");
            $result = mysql_query ("UPDATE cobrausers SET points='$ppoints' WHERE idkon ='$idk'");

      echo $ppoints."/";
    }
    else
     echo $key3."/";



}

else{

   //If everything is okay let's register this user

  // $insert = mysql_query("INSERT INTO cobrausers (idkon, passkon, firstname, secondname, kill, death, sss, points, level, some, res) VALUES ('$idk', '$passw', '$fname', '$sname', '0', '0', '0','0', '0', '0', '0' )");
   $insert = mysql_query("INSERT INTO cobrausers (idkon, passkon, firstname, secondname,  money ) VALUES ('$idk', '$passw', '$fname', '$sname',  '0' )");
   

  $select = mysql_query("SELECT * FROM cobrausers WHERE idkon='$idk'");

    $row2 = mysql_fetch_array($select);
 
     $key1 = $row2['kills'];

     echo $key1."/";

     $key2 = $row2['death'];

     echo $key2."/";

      $key3 = $row2['points'];

     echo $key3."/";


   $insert2 = mysql_query("INSERT INTO main (idkon, passkon, m100, m101, m102, m103, m104, m105, m106, m107, m108, m109, m110, m111, m112, m113, m114 ) VALUES ('$idk', '$passw', '100', '0','0','0','0','0','0','0','0','0','0','0','0','0','0' )");
   $insert3 = mysql_query("INSERT INTO secondary (idkon, passkon, s100, s101, s102, s103, s104, s105, s106 ) VALUES ('$idk', '$passw', '100', '0', '0', '0', '0', '0', '0' )");
   $insert4 = mysql_query("INSERT INTO melee (idkon, passkon, me100, me101, me102, me103 ) VALUES ('$idk', '$passw', '100', '0', '0', '0' )");
   $insert5 = mysql_query("INSERT INTO explosive (idkon, passkon, e100, e101, e102 ) VALUES ('$idk', '$passw', '100', '0', '0' )");
   $insert6 = mysql_query("INSERT INTO special (idkon, passkon, sp100, sp101, sp102  ) VALUES ('$idk', '$passw', '100', '0', '0' )");



    if(!$insert){

      die("There's little problem: ".mysql_error());

    }





}


?>

 



Процедура регистрации стандартная - но обратите внимание на этот момент

Синтаксис:
Используется javascript
 $insert2 = mysql_query("INSERT INTO main (idkon, passkon, m100, m101, m102, m103, m104, m105, m106, m107, m108, m109, m110, m111, m112, m113, m114 ) VALUES ('$idk', '$passw', '100', '0','0','0','0','0','0','0','0','0','0','0','0','0','0' )");
   $insert3 = mysql_query("INSERT INTO secondary (idkon, passkon, s100, s101, s102, s103, s104, s105, s106 ) VALUES ('$idk', '$passw', '100', '0', '0', '0', '0', '0', '0' )");
   $insert4 = mysql_query("INSERT INTO melee (idkon, passkon, me100, me101, me102, me103 ) VALUES ('$idk', '$passw', '100', '0', '0', '0' )");
   $insert5 = mysql_query("INSERT INTO explosive (idkon, passkon, e100, e101, e102 ) VALUES ('$idk', '$passw', '100', '0', '0' )");
   $insert6 = mysql_query("INSERT INTO special (idkon, passkon, sp100, sp101, sp102  ) VALUES ('$idk', '$passw', '100', '0', '0' )");


Единожды при регистрации игрока заполняются таблицы main secondary..., которые в архиве. Заполняется ссоответствующий ВК ай ди и в первое оружие ставится цифра 100 - это оружие которое новый игрок имеет по умолчанию бесплатно. Все остальные графы оружия заполняются нулем. Цифра 100 может даже обозначать проценты. Там зеленая полоска зависит от величины это цифры.

Если у меня тут в демо попокупают все оружие- вы не сможете увидеть что будет если оружие не куплено. Можно сделать так просто вначале изменить ай ди на 258807906 - это какой то нулевый игрок - убрать значение test


Конечно это вариант сырой - прототип. Я только начал делать - но это же лучше чем ничего. Интеграция в МФПС это полностью ваша задача -он даст только необходимые цифры в плеер префс - откуда мфпс будет их снимать и ставить нужное оружие. Это чисто ГУИ решение привязанное к базе.

И покупка за голоса тут тоже не реализована. Есть только кнопка купить - по ней надо реализовать. он там вроде покупает за очки сам по себе - но мне то даже не надо



Если что демо веб билда приложен в атачменте.
У вас нет доступа для просмотра вложений в этом сообщении.
Скрытый текст:
Объективная реальность это - что в жизни не может быть более одного пути, который в свою очередь обусловлен максимальным существующим давлением. (второй _ttp://habrahabr.ru/post/202654/)
ikhtd
Адепт
 
Сообщения: 1124
Зарегистрирован: 24 мар 2014, 12:20

Вернуться в Социальные сети

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1