I'm seeking plugin developer to teach me.

  • Below is my index.html,

    Doesn't work with ; added.

    You can do whatever you want, for me is enough the way way I implemented the FGL API. If anyone manage to do it better please post your solution.

    <!DOCTYPE html>

    <html manifest="offline.appcache">

    <head>

        <meta charset="UTF-8" />

         <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />

         <title>New project</title>

         

         <!-- 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" />

         <meta name="apple-mobile-web-app-capable" content="yes" />

         <meta name="apple-mobile-web-app-status-bar-style" content="black" />

         <link rel="apple-touch-icon" sizes="256x256" href="icon-256.png" />

         <meta name="HandheldFriendly" content="true" />

         

         <!-- Chrome for Android web app tags -->

         <meta name="mobile-web-app-capable" content="yes" />

         <link rel="shortcut icon" sizes="256x256" href="icon-256.png" />

        <!-- 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;

                   -ms-touch-action: none;

              }

              canvas {

                   touch-action-delay: none;

                   touch-action: none;

                   -ms-touch-action: none;

              }

        </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="640" height="480">

                   <!-- 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. -->

         <script src="jquery-2.0.0.min.js"></script>

         <script src="fgl.js"></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>

           var element = document.getElementById('c2canvas');

           fgl.create(element, 'com.fgl.gamename');

            //fgl.onReady(function(){loadGame();};

         </script>

          

        <script>

              // Size the canvas to fill the browser viewport.

              //var loadGame = function() {

              jQuery(window).resize(function() {

                   cr_sizeCanvas(jQuery(window).width(), jQuery(window).height());

              });

              

              // Start the Construct 2 project running on window load.

              

              jQuery(document).ready(function ()

              {               

                   // Create new runtime using the c2canvas

                   cr_createRuntime("c2canvas");

              });

              

              // 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>

  • Just tried it for myself and the game does load with the onReady function. It looks like this:

    <script>
         var element = document.getElementById('c2canvas');
            
            fgl.create(element, 'com.fgl.mygame');
            
            fgl.onReady(function(){
                loadGame();
                   
            });
         
         var loadGame = function() {
              // Size the canvas to fill the browser viewport.
              jQuery(window).resize(function() {
                   cr_sizeCanvas(jQuery(window).width(), jQuery(window).height());
              });
              
              // Start the Construct 2 project running on window load.
              jQuery(document).ready(function ()
              {               
                   // Create new runtime using the c2canvas
                   cr_createRuntime("c2canvas");
              });
              
              // 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>
    

    You may have some typo in your version.

  • I have come to the conclusion that a plugin isn't really needed if you're just going to use the ads, show more games and maybe send the score.

    You can do all this simply with the execute javascript action of the browser object. You'll just put "fgl.showAd();" or "fgl.showMoreGames();".

    Of course you need to exchange the index.html for the exported game (which you also would need to do when using the plugin). And also put the fgl.js file in the game folder (one thing the plugin would do for you). You can download a working index.html file that uses the onReady function by clicking here.

  • I guess the next step is to submit a game to FGL to see what if it gets approved.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • PixelRebirth

    Does the showads only work when you don't minify the script? It might be a bit hard to read the js file when you minify and edit it. I thought you guys were aiming to make a plugin so people could export and minify there script after placing there ads through C2?

  • Nevermind ignore what I wrote. I guess I'll try it out.

  • So far I got the game to work with the new index file. Is there anything that is broken for us to test?

  • paala

    mammoth

    PixelRebirth

    Paala's plugin works when you don't minify when exporting. Anyone know how to make the plugin work when you export and minify your project?

    Also for the "more games" option you'll have to edit the link on the fgl.js file to change the url into your URL otherwise you'll link to some useless annonymous site. But once again the showAd is the only thing you really need.

  • Also for the "more games" option you'll have to edit the link on the fgl.js file to change the url into your URL otherwise you'll link to some useless annonymous site. But once again the showAd is the only thing you really need.

    I don't think you are supposed to edit anything there. This is from the documentation:

    When tapped, this button will display an overlay which will cross

    promote other games in our network. By implementing the

    cross promotion system, you will also take advantage of this

    free traffic.

    The button should invoke the following code:

    f g l . s h o w M o r e G a m e s ( ) ;

    So it is my understanding that by editing the URL you'll break the cross promotion and won't be compliant with the API anymore.

  • PixelRebirth

    But wouldn't you just be linking the player to this URL if not edited?

    "http://moregames.differencegames.com"

    But then again I guess FGL would decline the game if we did edit the file.

  • Also it might not be such a good idea to send your direct html5 export to fgl. I'm not claiming that they steal or anything but I think it might be best to have your scripts obfuscated so sponsors or companies would have a harder time to steal and edit the game. Since minify doesn't work I guess i'll have to manually edit my scripts so they look like a bunch of jargon. Unless someone can fix the minifying issue with the fgl plugin.

    Any takers?

  • PixelRebirth

    But wouldn't you just be linking the player to this URL if not edited?

    "http://moregames.differencegames.com"

    But then again I guess FGL would decline the game if we did edit the file.

    Yes, sure. I don't know if that's a placeholder URL and FGL will replace it, in which case it probably wouldn't matter if you edited it first.

    It should end up linking to their crosspromotion system somehow, so editing the URL doesn't make sense anyway, because this function is not for linking to your own site or a site of your choice. As I understand it of course. <img src="smileys/smiley2.gif" border="0" align="middle" />

    Also it might not be such a good idea to send your direct html5 export to fgl. I'm not claiming that they steal or anything but I think it might be best to have your scripts obfuscated so sponsors or companies would have a harder time to steal and edit the game. Since minify doesn't work I guess i'll have to manually edit my scripts so they look like a bunch of jargon. Unless someone can fix the minifying issue with the fgl plugin.

    Any takers?

    Why use the plugin at all? You can minify just fine with the way I described earlier (use the execute javascript action of the browser object). Any problems for you with that method?

  • PixelRebirth

    OH GEEZ, how ignorant can I be...

    Thanks for pointing it out again. Your method works, I feel dumb for not rereading your post..

    " You can do all this simply with the execute javascript action of the browser object. You'll just put "fgl.showAd();" or "fgl.showMoreGames();".   "

    I guess the plugin really is not needed. Thanks for sharing, I appreciate it <img src="smileys/smiley20.gif" border="0" align="middle" />

    I guess the next thing to do, would be to see if our games get accepted by fgl.

  • My friend made a game which is using FGL platform, let's see if they approve his game.

  • Joannesalfa

    Give us a heads up if your friend gets contacted

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)