Пятница, 29 Марта 2024, 16:38

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Движки для разработки игр и сложные системы разработки » Движки для браузерных игр » Создание VK приложения. Часть 1: С чего начать? Что за API? (статья)
Создание VK приложения. Часть 1: С чего начать? Что за API?
JackNazaryanДата: Суббота, 20 Октября 2012, 00:24 | Сообщение # 1
старожил
Сейчас нет на сайте
Литература
В нашей статье мы будем использовать IFrame

Создание игры для контакта. Эта тема поднимается каждым вторым! Но только каждый десятый знает как такое сделать. Что нам понадобиться:

  • Construct 2
  • Какой то бесплатный безрекламный хостинг (я юзаю narod.ru)
  • Прямость рук evil
  • Опыт в Construct [2]
  • Мозги tongue

Итак, если у вас есть опыт в конструкте - начинайте свой проект (Внимание! Не проЭкт, проЭкты являются гадостью рунета!)
Закончили Single? Переводим по немногу в приложение.

Есть одна статья, которая будет вам помогать всё время разработки, и она ВОТ
Что же делать? Если вы опытный web дизайнер, то вам пофиг и эта статья вам нафиг не нужна. А если вы новичок, то тут есть материал вам в помощь

Итак, вам необходимо открыть страницу вашей игры. В тело страницы поместите это:
Code
<script src="http://vk.com/js/api/xd_connection.js?2" type="text/javascript"></script>

Итак, мы подключили API
После загрузки страницы для инициализации приложения можно использовать следующий код:
Code
<script type="text/javascript">
      VK.init(function() {
         // API initialization succeeded
         // Your code here
      });
</script>


Внимание! Инициализация приложения может закончится ещё до полной загрузки Вашего приложения

Обращение к ВКонтакте API
Для осуществления вызовов к API необходимо использовать функцию VK.api - VK.api(methodName, {params}, callback)

Quote
methodName - имя метода
params - как вы поняли, все параметры


VK.api принимает 3 параметра:
1) Название метода api.
2) Объект с параметрами запроса.
3) Функция для обработки результата.


Есть много newbie, которые считают что API не нужно! Они ошибаются! Без API приложение не будет для контакта! Или будет, но single...

Что же, создали вы игру, подключили API. Что делать дальше? ЧЁ ДАЛЬШЕ?
Для примера используем Ghost Shooter
Теперь создаём текстовый документ, в тело помещаем
Code
<!DOCTYPE html>
<html manifest="offline.appcache">
<head>
        <meta charset="UTF-8" />
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
     <title>Ghost Shooter</title>
     <!-- Note: running this exported project from disk may not work exactly like preview, since browsers block some features on the file:// protocol.  Once you've uploaded it to a server, it should work OK. -->
         
     <!-- Allow fullscreen mode on iOS devices. (These are Apple specific meta tags.) -->
     <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, target-densitydpi=device-dpi" />
     <meta name="apple-mobile-web-app-capable" content="yes" />
     <meta name="apple-mobile-web-app-status-bar-style" content="black" />
     <meta name="HandheldFriendly" content="true" />

        <!-- All margins and padding must be zero for the canvas to fill the screen. -->
     <style type="text/css">
      * {
       padding: 0;
       margin: 0;
      }
      body {
       background: #000;
       color: #fff;
       overflow: hidden;
      }
      canvas {
       position: fixed;
      }
        </style>
</head>     
         
<body>     
     <div id="fb-root"></div>
         
     <!-- The canvas must be inside a div called c2canvasdiv -->
     <div id="c2canvasdiv">
         
      <!-- The canvas the project will render to.  If you change its ID, don't forget to change the
      ID the runtime looks for in the jQuery events above (ready() and cr_sizeCanvas()). -->
      <canvas id="c2canvas" width="800" height="600">
       <!-- This text is displayed if the visitor's browser does not support HTML5.
       You can change it, but it is a good idea to link to a description of a browser
       and provide some links to download some popular HTML5-compatible browsers. -->
       <h1>Your browser does not appear to support HTML5.  Try upgrading your browser to the latest version.  <a href="http://www.whatbrowser.org">What is a browser?</a>
       <br/><br/><a href="http://www.microsoft.com/windows/internet-explorer/default.aspx">Microsoft Internet Explorer</a><br/>
       <a href="http://www.mozilla.com/firefox/">Mozilla Firefox</a><br/>
       <a href="http://www.google.com/chrome/">Google Chrome</a><br/>
       <a href="http://www.apple.com/safari/download/">Apple Safari</a><br/>
       <a href="http://www.google.com/chromeframe">Google Chrome Frame for Internet Explorer</a><br/></h1>
      </canvas>
          
     </div>
         
     <!-- Pages load faster with scripts at the bottom -->
         
     <!-- Construct 2 exported games require jQuery.  To save bandwidth, by default
     this is set to grab it off the Google content delivery network (CDN). Fall back to local if not available. -->
     <script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
     <script>window.jQuery || document.write("<script src='jquery-1.7.1.min.js'>\x3C/script>")</script>

         
        <!-- The runtime script.  You can rename it, but don't forget to rename the reference here as well.
        This file will have been minified and obfuscated if you enabled "Minify script" during export. -->
     <script src="c2runtime.js"></script>

        <script>
      // Size the canvas to fill the browser viewport.
      jQuery(window).resize(function() {
       cr_sizeCanvas(jQuery(window).width(), jQuery(window).height());
      });
          
      window.addEventListener('orientationchange', cr_sizeCanvas, false);
         
      // Start the Construct 2 project running on window load.
      jQuery(document).ready(function ()
      {       
       // Create new runtime using the c2canvas
       cr.createRuntime("c2canvas");
           
       cr_sizeCanvas(jQuery(window).width(), jQuery(window).height());
      });
          
      // Pause and resume on page becoming visible/invisible
      function onVisibilityChanged() {
       if (document.hidden || document.mozHidden || document.webkitHidden || document.msHidden)
        cr_setSuspended(true);
       else
        cr_setSuspended(false);
      };
          
      document.addEventListener("visibilitychange", onVisibilityChanged, false);
      document.addEventListener("mozvisibilitychange", onVisibilityChanged, false);
      document.addEventListener("webkitvisibilitychange", onVisibilityChanged, false);
      document.addEventListener("msvisibilitychange", onVisibilityChanged, false);
          
        </script>
</body>     
</html>

Сохраняем как game.html

Теперь делаем главную страницу. Там будет "Начать игру", "Рекорды"
Главное - чтобы не было "Открыть в новом окне" - всё должно быть в текущем. Думаю вы понимаете почему...
Использование API - самое важное

Пример кода обработки события:
Code
VK.addCallback("onSettingsChanged", onSettingsChanged);     
     ...     
     function onSettingsChanged(settings) {     
     // Пофиг что, главное чтобы было правильно!
     }


Пример выполнения запроса к API:
Code
VK.api("getProfiles", {uids:"1,2,3,4"}, function(data) {     
         // Действия с полученными данными     
     });


Во второй части мы будем разбирать, как сделать таблицу рекордов и немного поработаем над API

P.S. Строго не судите, я не профи в API

---

Сейчас популярно использовать вторую копию игры с методом "Войти через ВК"

Добавлено (20.10.2012, 00:24)
---------------------------------------------
Пишите коменты!

Сообщение отредактировал JackNazaryan - Пятница, 19 Октября 2012, 22:58
SkyOrviasДата: Суббота, 20 Октября 2012, 13:36 | Сообщение # 2
частый гость
Сейчас нет на сайте
неплохо

ОППА ГАҤНАМ СТАЙАЛ
:3 ;3 =3 x3 B3 >3 - это мои котятки :3
DiodeДата: Суббота, 20 Октября 2012, 13:40 | Сообщение # 3
участник
Сейчас нет на сайте
Покажи свою игру.

\[*ш*]/ robots will rule the world!
Игры должны быть красивыми.
И хватит называть свои говнюшечки проектами.
Мученик всия геймдева, зобаненый сетевыми гоблинами нетрадиционной ориентации.
alex_progerДата: Суббота, 20 Октября 2012, 13:54 | Сообщение # 4
участник
Сейчас нет на сайте
Quote
Construct 2
бред, notepad ++ спокойно сойдёт
Quote
Какой то бесплатный безрекламный хостинг (я юзаю narod.ru)
narod.ru без рекламы? о_0 юзай guru-host.ru для вк самое то (первый месяц без рекламы а потом копейки платишь и всё ок)
Quote
Опыт в Construct [2]
повторюсь : бред! надо знать html , css (для дизайна), php, javascript.
И какого фига вы разметили урок iFrame приложения во flash разделе?
И да вы должны были в первую очередь написать что надо создать площадку для приложения! такой код без площадки ничего делать не будет!

--Дополнение--
Quote
Есть много newbie,
- кто такие newbie?
Quote
которые считают что API не нужно!

Quote
Они ошибаются!
хоть здесь я согласен
Quote
Без API приложение не будет для контакта!
конечно.
Quote
Или будет, но single...
WTF???


Сообщение отредактировал alex_proger - Суббота, 20 Октября 2012, 13:57
CoreXДата: Вторник, 23 Октября 2012, 01:07 | Сообщение # 5
был не раз
Сейчас нет на сайте
Quote (JackNazaryan)
Construct 2

Я считаю так что не стоит себя загонять в рамки конструктора, таким путем не когда не станешь нормальным девелопером.
JackNazaryanДата: Пятница, 26 Октября 2012, 17:03 | Сообщение # 6
старожил
Сейчас нет на сайте
Quote (CoreX)
Я считаю так что не стоит себя загонять в рамки конструктора, таким путем не когда не станешь нормальным девелопером.

Согласен, хотя можно всё таки использовать какой то конструктор для тела игры и подключать API
jekiДата: Среда, 31 Октября 2012, 15:54 | Сообщение # 7
участник
Сейчас нет на сайте
А кто знает как на свой сайт вставить вк приложение?

Поставьте + плизми

TalcoДата: Среда, 31 Октября 2012, 18:09 | Сообщение # 8
почетный гость
Сейчас нет на сайте
Quote (jeki)
А кто знает как на свой сайт вставить вк приложение?

Чьё приложение? Чужое или своё? smile Насчёт чужого, думаю, ответ очевиден, а своё и так должно находиться у себя на сервере.


xNova: Революция
jekiДата: Среда, 31 Октября 2012, 19:36 | Сообщение # 9
участник
Сейчас нет на сайте
Talco, я имел введу чужое тюрягу.

Поставьте + плизми

Форум игроделов » Движки для разработки игр и сложные системы разработки » Движки для браузерных игр » Создание VK приложения. Часть 1: С чего начать? Что за API? (статья)
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг