<?xml version="1.0"?>
<rss version="2.0"><channel><title>melonJS Latest Topics</title><link>https://www.html5gamedevs.com/forum/32-melonjs/</link><description>melonJS Latest Topics</description><language>en</language><item><title>melonjs zooming and panning</title><link>https://www.html5gamedevs.com/topic/27566-melonjs-zooming-and-panning/</link><description><![CDATA[<p>
	Can anyone please tell me whether  zooming / panning is possible in melonjs???
</p>]]></description><guid isPermaLink="false">27566</guid><pubDate>Tue, 10 Jan 2017 06:38:49 +0000</pubDate></item><item><title>We are back !</title><link>https://www.html5gamedevs.com/topic/56446-we-are-back/</link><description><![CDATA[<p>
	Following the closure of our discourse account, and HTML5GameDevs not closing anymore, we are back here ! Sorry to everybody for all the back and forth <span><img alt=":)" data-emoticon="" height="20" src="https://www.html5gamedevs.com/uploads/emoticons/default_smile.png" srcset="https://www.html5gamedevs.com/uploads/emoticons/smile@2x.png 2x" title=":)" width="20" /></span>
</p>
]]></description><guid isPermaLink="false">56446</guid><pubDate>Tue, 30 Jul 2024 04:33:51 +0000</pubDate></item><item><title>melonJS 7.1.0</title><link>https://www.html5gamedevs.com/topic/43329-melonjs-710/</link><description><![CDATA[
<p>
	Hi Guys,
</p>

<p>
	Back from holiday, and after having missed the release window before leaving, here is finally the latest 7.1.0 update for melonJS.
</p>

<p>
	Some nice things in this release, including <span>:</span>
</p>

<ul><li>
		<span>Last but not least,  staggered hexagonal and isometric Tiled maps </span>support
	</li>
	<li>
		<span>More technical catch-up to align both the Canvas and WebGL renderer, and further improvement to the new me.GLShader class</span>
	</li>
	<li>
		<span>Various fixes and improvements in me.Text, Physic, Pointer, Audio and Sprite objects.</span>
	</li>
</ul><p>
	See full changelog <a href="https://github.com/melonjs/melonJS/releases/tag/7.1.0" rel="external nofollow">here</a>, and <span>as always all changes are backward compatible with the previous </span>version, and available here:
</p>

<p>
	<a href="https://github.com/melonjs/melonJS/releases/tag/7.1.0" rel="external nofollow">https://github.com/melonjs/melonJS/releases/tag/7.1.0</a>
</p>

<p>
	or on npm/jsdeliver <span><span><span><span>:</span></span></span></span>
</p>

<p>
	<span><span><span><a href="https://www.jsdelivr.com/package/npm/melonjs" rel="external nofollow">https://www.jsdelivr.com/package/npm/melonjs</a></span></span></span>
</p>

<p>
	 
</p>

<p>
	Tell us what you think !
</p>

<p>
	 
</p>

<p>
	-- the melonJS team
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">43329</guid><pubDate>Tue, 16 Jul 2019 04:49:57 +0000</pubDate></item><item><title>Blue and Yellow fight Poo Tin!</title><link>https://www.html5gamedevs.com/topic/48217-blue-and-yellow-fight-poo-tin/</link><description><![CDATA[
<p>
	<a contenteditable="false" data-ipshover="" data-ipshover-target="https://www.html5gamedevs.com/profile/24596-obiot/?do=hovercard" data-mentionid="24596" href="https://www.html5gamedevs.com/profile/24596-obiot/" rel="">@obiot</a>
</p>

<p>
	Here's my latest melonjs game! It's a very simple one.
</p>

<p>
	Arch super-villain Poo Tin, which is literally a tin of poo, wants to blot out the colours blue and yellow from the earth! To stop Poo Tin, you have to paint Poo Tin out with a blue and yellow paintbrush! All net proceeds (i.e. after deducting all expenses incurred for this product and subject to the withdrawal being able to be performed in view of Microsoft and Google's minimum payment threshold) shall be donated for humanitarian causes. This game is a work of fiction for entertainment purposes only. Any resemblance to actual persons, living or dead, or entities or events, is purely coincidental.
</p>

<p>
	<a href="https://play.google.com/store/apps/details?id=com.customautosys.pootin" rel="external nofollow">https://play.google.com/store/apps/details?id=com.customautosys.pootin</a>
</p>

<p>
	It is quite expensive because the net proceeds will be donated to charity. Stay tuned for the Microsoft Store release which is coming soon!
</p>
]]></description><guid isPermaLink="false">48217</guid><pubDate>Fri, 04 Mar 2022 16:53:53 +0000</pubDate></item><item><title>Unable to change the color of BitmapText</title><link>https://www.html5gamedevs.com/topic/47316-unable-to-change-the-color-of-bitmaptext/</link><description><![CDATA[
<p>
	I'm following the melonJS guides on space invaders and platformer.
</p>

<p>
	Tried to add a HUD component with score on it. Obtained the font files from their github: <a href="https://github.com/melonjs/tutorial-platformer/tree/28425a946836e21e58e8fbc443f380b990e7f527/tutorial_step6/data/fnt" rel="external nofollow">https://github.com/melonjs/tutorial-platformer/tree/28425a946836e21e58e8fbc443f380b990e7f527/tutorial_step6/data/fnt</a>
</p>

<p>
	 
</p>

<p>
	The text does show up, but it appears white, and I can't change the color on it.
</p>

<p>
	This is what I've tried:
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted">
<span class="com">// 1</span><span class="pln">
</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">font </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> me</span><span class="pun">.</span><span class="typ">BitmapText</span><span class="pun">(</span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
  font</span><span class="pun">:</span><span class="pln"> </span><span class="str">"PressStart2P"</span><span class="pun">,</span><span class="pln">
  fillStyle</span><span class="pun">:</span><span class="pln"> </span><span class="str">"#000000"</span><span class="pun">,</span><span class="pln">
  textAlign</span><span class="pun">:</span><span class="pln"> </span><span class="str">"right"</span><span class="pun">,</span><span class="pln">
  textBaseline</span><span class="pun">:</span><span class="pln"> </span><span class="str">"bottom"</span><span class="pun">,</span><span class="pln">
</span><span class="pun">});</span><span class="pln">

</span><span class="com">// 2</span><span class="pln">
</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">font</span><span class="pun">.</span><span class="pln">tint</span><span class="pun">.</span><span class="pln">setColor</span><span class="pun">(</span><span class="lit">255</span><span class="pun">,</span><span class="pln"> </span><span class="lit">128</span><span class="pun">,</span><span class="pln"> </span><span class="lit">128</span><span class="pun">);</span><span class="pln">

</span><span class="com">// 3</span><span class="pln">
</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">font</span><span class="pun">.</span><span class="pln">fillStyle </span><span class="pun">=</span><span class="pln"> </span><span class="str">"#000000"</span><span class="pln"> </span><span class="pun">(</span><span class="pln">and </span><span class="str">"#000"</span><span class="pun">,</span><span class="pln"> and </span><span class="str">"black"</span><span class="pun">)</span><span class="pln">

</span><span class="com">// 4</span><span class="pln">
</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">font</span><span class="pun">.</span><span class="pln">fillStyle </span><span class="pun">=</span><span class="pln"> me</span><span class="pun">.</span><span class="typ">Color</span><span class="pun">(</span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="lit">0</span><span class="pun">);</span></pre>

<p>
	 
</p>

<p>
	What am I doing wrong?
</p>
]]></description><guid isPermaLink="false">47316</guid><pubDate>Wed, 19 May 2021 16:59:31 +0000</pubDate></item><item><title>MelonJS + Multiplayer</title><link>https://www.html5gamedevs.com/topic/47773-melonjs-multiplayer/</link><description><![CDATA[
<p>
	Hi all,
</p>

<p>
	 
</p>

<p>
	I have some experience writing 2d platform games via my own engine from scratch. Obviously, it takes a lot of time to maintain an engine from scratch (for me, at least) to the point of where I can easily reuse it in future projects. Also, I don't have too much experience in multiplayer games, but I want to give it a go.<br /><br />
	My question(s): <br /><br />
	1. Is MelonJS the right choice for writing a nice multiplayer 2d platform shooter? I was looking into MelonJS because of it's ability to easily work with Tiled generated maps. That can come in handy a lot with the development of such a game. <br /><br />
	2. I've noticed there's not truly too much about the multiplayer side of things when it comes to MelonJS. A showcase here and there, but other than that, doesn't seem like too much support? Ideally, on a shooter, a lot fo server side things need to be taken into account to stop the risk of cheating as much as possible. Anyone have any input on things like that? Specifically, are there any examples of MelonJS being used as a multiplayer game?<br /><br />
	In addition:<br /><br />
	I realize writing a multiplayer game is a huge undertaking and can lead to me being way over my head. However, it's my goal to write a specific game and I am willing to learn as much as I can during that process. <br /><br />
	Any information is welcome and greatly appreciated.
</p>

<p>
	 
</p>

<p>
	Thank you!
</p>
]]></description><guid isPermaLink="false">47773</guid><pubDate>Thu, 23 Sep 2021 15:52:52 +0000</pubDate></item><item><title>Typescript</title><link>https://www.html5gamedevs.com/topic/47681-typescript/</link><description><![CDATA[
<p>
	Dear Olivier,
</p>

<p>
	Is it possible to use TypeScript with melonjs?
</p>

<p>
	E.g. can I use a TypeScript class to extend from a Jay-extend class?
</p>
]]></description><guid isPermaLink="false">47681</guid><pubDate>Thu, 26 Aug 2021 16:06:23 +0000</pubDate></item><item><title>Problems with UI example</title><link>https://www.html5gamedevs.com/topic/47597-problems-with-ui-example/</link><description><![CDATA[
<p>
	have used the ui example to write code to add a floating map panel to the game but the buttons in the map panel don't respond to events, but have use the ui example almost as is just some changes to the way sprites are displayed, not hard coded by using a generic panel code to allow any type of floating panel graphic to be used as the code sows below, does any one have any clue as to why the buttons don't respond to mouse over event, but if i change the button from floating=false to floating=true the button responds to mouse over events
</p>

<p>
	code for the three sections are below
</p>

<div style="background-color:#1e1e1e;color:#d4d4d4;font-size:12px;">
	<div>
		<span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;"> = </span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;"> || {};</span>
	</div>
	 

	<div>
		<span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">floating_generic_panel</span><span style="color:#d4d4d4;"> = </span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">Container</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">extend</span><span style="color:#d4d4d4;"> ( {</span>
	</div>
	 

	<div>
		<span style="color:#4ec9b0;">init</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;"> (</span><span style="color:#9cdcfe;">panel_posX</span><span style="color:#d4d4d4;">, </span><span style="color:#9cdcfe;">panel_posY</span><span style="color:#d4d4d4;">, </span><span style="color:#9cdcfe;">panel_width</span><span style="color:#d4d4d4;">, </span><span style="color:#9cdcfe;">panel_height</span><span style="color:#d4d4d4;">, </span><span style="color:#9cdcfe;">panel_image_name</span><span style="color:#d4d4d4;">, </span><span style="color:#9cdcfe;">is_floating</span><span style="color:#d4d4d4;">) {</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">// call the constructor</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">_super</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">Container</span><span style="color:#d4d4d4;">, </span><span style="color:#ce9178;">"init"</span><span style="color:#d4d4d4;">, [</span><span style="color:#9cdcfe;">panel_posX</span><span style="color:#d4d4d4;">, </span><span style="color:#9cdcfe;">panel_posY</span><span style="color:#d4d4d4;">, </span><span style="color:#9cdcfe;">panel_width</span><span style="color:#d4d4d4;"> + </span><span style="color:#b5cea8;">2</span><span style="color:#d4d4d4;">, </span><span style="color:#9cdcfe;">panel_height</span><span style="color:#d4d4d4;"> + </span><span style="color:#b5cea8;">2</span><span style="color:#d4d4d4;">]);</span>
	</div>

	<div>
		 
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">anchorPoint</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">set</span><span style="color:#d4d4d4;">(</span><span style="color:#b5cea8;">0.0</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">0.0</span><span style="color:#d4d4d4;">);</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">// persistent across level change</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">isPersistent</span><span style="color:#d4d4d4;"> = </span><span style="color:#569cd6;">true</span><span style="color:#d4d4d4;">;</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">// use screen coordinates</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">floating</span><span style="color:#d4d4d4;"> = </span><span style="color:#9cdcfe;">is_floating</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		 
	</div>

	<div>
		<span style="color:#6a9955;">// give a name</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">panel_sprite_name</span><span style="color:#d4d4d4;"> = </span><span style="color:#9cdcfe;">panel_image_name</span><span style="color:#d4d4d4;">;</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">/********************/</span>
	</div>

	<div>
		<span style="color:#6a9955;">/* panel background */</span>
	</div>

	<div>
		<span style="color:#6a9955;">/********************/</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">floating_panel_sprite</span><span style="color:#d4d4d4;"> = </span><span style="color:#569cd6;">new</span><span style="color:#d4d4d4;"> </span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">Sprite</span><span style="color:#d4d4d4;">(</span><span style="color:#b5cea8;">1</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">1</span><span style="color:#d4d4d4;">, {</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">image</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">panel_sprite_name</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">framewidth</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#9cdcfe;">panel_width</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">frameheight</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#9cdcfe;">panel_height</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">anchorPoint</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">new</span><span style="color:#d4d4d4;"> </span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">Vector2d</span><span style="color:#d4d4d4;">(</span><span style="color:#b5cea8;">0.0</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">0.0</span><span style="color:#d4d4d4;">)</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">});</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">addChild</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">floating_panel_sprite</span><span style="color:#d4d4d4;">);</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">// input status flags</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">selected</span><span style="color:#d4d4d4;"> = </span><span style="color:#569cd6;">false</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">hover</span><span style="color:#d4d4d4;"> = </span><span style="color:#569cd6;">false</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#6a9955;">// to memorize where we grab the shape</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">grabOffset</span><span style="color:#d4d4d4;"> = </span><span style="color:#569cd6;">new</span><span style="color:#d4d4d4;"> </span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">Vector2d</span><span style="color:#d4d4d4;">(</span><span style="color:#b5cea8;">0.0</span><span style="color:#d4d4d4;">,</span><span style="color:#b5cea8;">0.0</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">},</span>
	</div>
	 

	<div>
		<span style="color:#4ec9b0;">onActivateEvent</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;"> () {</span>
	</div>

	<div>
		<span style="color:#6a9955;">// register on the global pointermove event</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">handler</span><span style="color:#d4d4d4;"> = </span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">event</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">subscribe</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">event</span><span style="color:#d4d4d4;">.</span><span style="color:#4fc1ff;">POINTERMOVE</span><span style="color:#d4d4d4;">, </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">pointerMove</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">bind</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">));</span>
	</div>

	<div>
		<span style="color:#6a9955;">//register on mouse/touch event</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">input</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">registerPointerEvent</span><span style="color:#d4d4d4;">(</span><span style="color:#ce9178;">"pointerdown"</span><span style="color:#d4d4d4;">, </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">, </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">onSelect</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">bind</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">));</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">input</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">registerPointerEvent</span><span style="color:#d4d4d4;">(</span><span style="color:#ce9178;">"pointerup"</span><span style="color:#d4d4d4;">, </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">, </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">onRelease</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">bind</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">));</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">input</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">registerPointerEvent</span><span style="color:#d4d4d4;">(</span><span style="color:#ce9178;">"pointercancel"</span><span style="color:#d4d4d4;">, </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">, </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">onRelease</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">bind</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">));</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">// call the parent function</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">_super</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">Container</span><span style="color:#d4d4d4;">, </span><span style="color:#ce9178;">"onActivateEvent"</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">},</span>
	</div>
	 

	<div>
		<span style="color:#dcdcaa;">onDeactivateEvent</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;"> () {</span>
	</div>

	<div>
		<span style="color:#6a9955;">// unregister on the global pointermove event</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">event</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">unsubscribe</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">handler</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#6a9955;">// release pointer events</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">input</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">releasePointerEvent</span><span style="color:#d4d4d4;">(</span><span style="color:#ce9178;">"pointerdown"</span><span style="color:#d4d4d4;">, </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">input</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">releasePointerEvent</span><span style="color:#d4d4d4;">(</span><span style="color:#ce9178;">"pointerup"</span><span style="color:#d4d4d4;">, </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">input</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">releasePointerEvent</span><span style="color:#d4d4d4;">(</span><span style="color:#ce9178;">"pointercancel"</span><span style="color:#d4d4d4;">, </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">);</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">// call the parent function</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">_super</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">Container</span><span style="color:#d4d4d4;">, </span><span style="color:#ce9178;">"onDeactivateEvent"</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">},</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">/**</span>
	</div>

	<div>
		<span style="color:#6a9955;">* pointermove function</span>
	</div>

	<div>
		<span style="color:#6a9955;">*/</span>
	</div>

	<div>
		<span style="color:#4ec9b0;">pointerMove</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;"> (</span><span style="color:#9cdcfe;">event</span><span style="color:#d4d4d4;">) {</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">hover</span><span style="color:#d4d4d4;"> = </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">getBounds</span><span style="color:#d4d4d4;">().</span><span style="color:#dcdcaa;">containsPoint</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">event</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">gameX</span><span style="color:#d4d4d4;">, </span><span style="color:#9cdcfe;">event</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">gameY</span><span style="color:#d4d4d4;">);</span>
	</div>
	 

	<div>
		<span style="color:#c586c0;">if</span><span style="color:#d4d4d4;"> (</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">selected</span><span style="color:#d4d4d4;">) {</span>
	</div>

	<div>
		<span style="color:#6a9955;">// follow the pointer</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">pos</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">set</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">event</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">gameX</span><span style="color:#d4d4d4;">, </span><span style="color:#9cdcfe;">event</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">gameY</span><span style="color:#d4d4d4;">, </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">pos</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">z</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">pos</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">sub</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">grabOffset</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">updateChildBounds</span><span style="color:#d4d4d4;">();</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">}</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">},</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">// mouse down function</span>
	</div>

	<div>
		<span style="color:#4ec9b0;">onSelect</span><span style="color:#9cdcfe;"> :</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;"> (</span><span style="color:#9cdcfe;">event</span><span style="color:#d4d4d4;">) {</span>
	</div>

	<div>
		<span style="color:#c586c0;">if</span><span style="color:#d4d4d4;"> (</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">hover</span><span style="color:#d4d4d4;"> === </span><span style="color:#569cd6;">true</span><span style="color:#d4d4d4;">) {</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">grabOffset</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">set</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">event</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">gameX</span><span style="color:#d4d4d4;">, </span><span style="color:#9cdcfe;">event</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">gameY</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">grabOffset</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">sub</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">pos</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">selected</span><span style="color:#d4d4d4;"> = </span><span style="color:#569cd6;">true</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#6a9955;">// don"t propagate the event furthermore</span>
	</div>

	<div>
		<span style="color:#c586c0;">return</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">false</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">}</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">},</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">// mouse up function</span>
	</div>

	<div>
		<span style="color:#4ec9b0;">onRelease</span><span style="color:#9cdcfe;"> :</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;"> (</span><span style="color:#6a9955;">/*event*/</span><span style="color:#d4d4d4;">) {</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">selected</span><span style="color:#d4d4d4;"> = </span><span style="color:#569cd6;">false</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">},</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">// update function</span>
	</div>

	<div>
		<span style="color:#dcdcaa;">update</span><span style="color:#9cdcfe;"> :</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">dt</span><span style="color:#d4d4d4;">) {</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">_super</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">Container</span><span style="color:#d4d4d4;">, </span><span style="color:#ce9178;">"update"</span><span style="color:#d4d4d4;">, [ </span><span style="color:#9cdcfe;">dt</span><span style="color:#d4d4d4;"> ]);</span>
	</div>

	<div>
		<span style="color:#c586c0;">return</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">true</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">},</span>
	</div>
	 

	<div>
		<span style="color:#dcdcaa;">draw</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">renderer</span><span style="color:#d4d4d4;">) {</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">_super</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">Container</span><span style="color:#d4d4d4;">, </span><span style="color:#ce9178;">"draw"</span><span style="color:#d4d4d4;">, [ </span><span style="color:#9cdcfe;">renderer</span><span style="color:#d4d4d4;"> ]);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">}</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">});</span>
	</div>
</div>

<p>
	 
</p>

<div style="background-color:#1e1e1e;color:#d4d4d4;font-size:12px;">
	<div>
		<span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;"> = </span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;"> || {};</span>
	</div>
	 

	<div>
		<span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">floating_map_attach_button</span><span style="color:#d4d4d4;"> = </span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">GUI_Object</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">extend</span><span style="color:#d4d4d4;"> ( {</span>
	</div>
	 

	<div>
		<span style="color:#4ec9b0;">init</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;"> () {</span>
	</div>
	 

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">_super</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">GUI_Object</span><span style="color:#d4d4d4;">, </span><span style="color:#ce9178;">"init"</span><span style="color:#d4d4d4;">, [</span><span style="color:#b5cea8;">4</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">4</span><span style="color:#d4d4d4;">, {</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">image</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#ce9178;">"map_attach_button_normal"</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">framewidth</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#b5cea8;">18</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">frameheight</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#b5cea8;">18</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">anchorPoint</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">new</span><span style="color:#d4d4d4;"> </span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">Vector2d</span><span style="color:#d4d4d4;">(</span><span style="color:#b5cea8;">0.0</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">0.0</span><span style="color:#d4d4d4;">),</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">}]);</span>
	</div>

	<div>
		 
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">setOpacity</span><span style="color:#d4d4d4;">(</span><span style="color:#b5cea8;">1.0</span><span style="color:#d4d4d4;">);</span>
	</div>
	 

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">floating</span><span style="color:#d4d4d4;"> = </span><span style="color:#569cd6;">false</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">},</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">/**</span>
	</div>

	<div>
		<span style="color:#6a9955;">* function called when the pointer is over the object</span>
	</div>

	<div>
		<span style="color:#6a9955;">*/</span>
	</div>

	<div>
		<span style="color:#dcdcaa;">onOver</span><span style="color:#9cdcfe;"> :</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;"> (</span><span style="color:#6a9955;">/* event */</span><span style="color:#d4d4d4;">) {</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">setOpacity</span><span style="color:#d4d4d4;">(</span><span style="color:#b5cea8;">0.5</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">},</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">/**</span>
	</div>

	<div>
		<span style="color:#6a9955;">* function called when the pointer is leaving the object area</span>
	</div>

	<div>
		<span style="color:#6a9955;">*/</span>
	</div>

	<div>
		<span style="color:#dcdcaa;">onOut</span><span style="color:#9cdcfe;"> :</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;"> (</span><span style="color:#6a9955;">/* event */</span><span style="color:#d4d4d4;">) {</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">setOpacity</span><span style="color:#d4d4d4;">(</span><span style="color:#b5cea8;">1.0</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">},</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">/**</span>
	</div>

	<div>
		<span style="color:#6a9955;">* function called when the object is clicked on</span>
	</div>

	<div>
		<span style="color:#6a9955;">*/</span>
	</div>

	<div>
		<span style="color:#dcdcaa;">onClick</span><span style="color:#9cdcfe;"> :</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;"> (</span><span style="color:#6a9955;">/* event */</span><span style="color:#d4d4d4;">) {</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">console</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">log</span><span style="color:#d4d4d4;">(</span><span style="color:#ce9178;">"on click event"</span><span style="color:#d4d4d4;">)</span>
	</div>

	<div>
		<span style="color:#6a9955;">// don't propagate the event</span>
	</div>

	<div>
		<span style="color:#c586c0;">return</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">false</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">},</span>
	</div>
	 

	<div>
		<span style="color:#6a9955;">/**</span>
	</div>

	<div>
		<span style="color:#6a9955;">* function called when the pointer button is released</span>
	</div>

	<div>
		<span style="color:#6a9955;">*/</span>
	</div>

	<div>
		<span style="color:#dcdcaa;">onRelease</span><span style="color:#9cdcfe;"> :</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;"> (</span><span style="color:#6a9955;">/* event */</span><span style="color:#d4d4d4;">) {</span>
	</div>

	<div>
		 
	</div>

	<div>
		<span style="color:#6a9955;">// don't propagate the event</span>
	</div>

	<div>
		<span style="color:#c586c0;">return</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">false</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">},</span>
	</div>
	 

	<div>
		<span style="color:#dcdcaa;">draw</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">renderer</span><span style="color:#d4d4d4;">) {</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">_super</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">GUI_Object</span><span style="color:#d4d4d4;">, </span><span style="color:#ce9178;">"draw"</span><span style="color:#d4d4d4;">, [ </span><span style="color:#9cdcfe;">renderer</span><span style="color:#d4d4d4;"> ]);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">}</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">});</span>
	</div>
</div>

<p>
	 
</p>

<div style="background-color:#1e1e1e;color:#d4d4d4;font-size:12px;">
	<div>
		<span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;"> = </span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;"> || {};</span>
	</div>
	 

	<div>
		<span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">play_screen</span><span style="color:#d4d4d4;"> = </span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">Stage</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">extend</span><span style="color:#d4d4d4;">({</span>
	</div>

	<div>
		<span style="color:#6a9955;">/**</span>
	</div>

	<div>
		<span style="color:#6a9955;">* action to perform on state change</span>
	</div>

	<div>
		<span style="color:#6a9955;">*/</span>
	</div>

	<div>
		<span style="color:#4ec9b0;">onResetEvent</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;">() </span>
	</div>

	<div>
		<span style="color:#d4d4d4;">{ </span>
	</div>

	<div>
		<span style="color:#6a9955;">// load a level</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">levelDirector</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">loadLevel</span><span style="color:#d4d4d4;">(</span><span style="color:#ce9178;">"castle_level"</span><span style="color:#d4d4d4;">); </span>
	</div>

	<div>
		<span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">world</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">addChild</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">new</span><span style="color:#d4d4d4;"> </span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">player_plaque_display</span><span style="color:#d4d4d4;">(), </span><span style="color:#b5cea8;">100</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">world</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">addChild</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">new</span><span style="color:#d4d4d4;"> </span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">player_hud_mana_health_sprite</span><span style="color:#d4d4d4;">(), </span><span style="color:#b5cea8;">100</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">world</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">addChild</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">new</span><span style="color:#d4d4d4;"> </span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">main_game_interface_display</span><span style="color:#d4d4d4;">(), </span><span style="color:#b5cea8;">100</span><span style="color:#d4d4d4;">);</span>
	</div>
	 

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">screen_width</span><span style="color:#d4d4d4;"> = </span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">viewport</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">width</span><span style="color:#d4d4d4;">;</span>
	</div>
	 

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">floating_map_window</span><span style="color:#d4d4d4;"> = </span><span style="color:#569cd6;">new</span><span style="color:#d4d4d4;"> </span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">floating_generic_panel</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">screen_width</span><span style="color:#d4d4d4;"> - </span><span style="color:#b5cea8;">112</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">5</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">105</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">125</span><span style="color:#d4d4d4;">,</span><span style="color:#ce9178;">"map_interface"</span><span style="color:#d4d4d4;">, </span><span style="color:#569cd6;">true</span><span style="color:#d4d4d4;">);</span>
	</div>
	 

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">floating_map_window</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">addChild</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">new</span><span style="color:#d4d4d4;"> </span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">floating_map_attach_button</span><span style="color:#d4d4d4;">());</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">floating_map_window</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">addChild</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">new</span><span style="color:#d4d4d4;"> </span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">floating_map_minimize_button</span><span style="color:#d4d4d4;">());</span>
	</div>

	<div>
		<span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">floating_map_window</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">addChild</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">new</span><span style="color:#d4d4d4;"> </span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">floating_map_node_points_button</span><span style="color:#d4d4d4;">());</span>
	</div>
	 

	<div>
		<span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">world</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">addChild</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">floating_map_window</span><span style="color:#d4d4d4;">,</span><span style="color:#b5cea8;">101</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		 
	</div>

	<div>
		 
	</div>

	<div>
		<span style="color:#d4d4d4;">},</span>
	</div>

	<div>
		<span style="color:#6a9955;">/**</span>
	</div>

	<div>
		<span style="color:#6a9955;">* action to perform when leaving this screen (state change)</span>
	</div>

	<div>
		<span style="color:#6a9955;">*/</span>
	</div>

	<div>
		<span style="color:#dcdcaa;">onDestroyEvent</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;">() </span>
	</div>

	<div>
		<span style="color:#d4d4d4;">{</span>
	</div>

	<div>
		<span style="color:#c586c0;">return</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">}</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">});</span>
	</div>
</div>

<p>
	the root object as from the ui example is a container
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">47597</guid><pubDate>Thu, 05 Aug 2021 18:27:44 +0000</pubDate></item><item><title>New Vaccination gameplay feature in The Viral / COVID-19 Game</title><link>https://www.html5gamedevs.com/topic/47476-new-vaccination-gameplay-feature-in-the-viral-covid-19-game/</link><description><![CDATA[
<p>
	As you guys know, The COVID-19 / Viral Game is my flagship 1st full-fledged melonjs game.
</p>

<p>
	Not too long ago, I got vaccinated with my first Moderna jab. Hooray! My second one is coming up soon.
</p>

<p>
	So the jab has given me motivation. Why not add in a new gameplay feature to The Viral Game?
</p>

<p>
	Unfortunately I can't give you the vaccine if you haven't been vaccinated, but you can feel satisfied by simulating the effects of the vaccine on-screen!
</p>

<p>
	To support the international push towards vaccination, we have added a Vaccination gameplay feature in The Viral Game!
</p>

<p>
	You simply need to click the button, wait for the vaccination to build, then deploy it. It will then start spawning mRNA in the game, which does no damage. When attacked and killed by your white blood cells, it promotes your white blood cells, giving them a star at the top right-hand corner and higher damage against the real viruses in the game.
</p>

<p>
	You can watch our video here:
</p>

<div class="ipsEmbeddedVideo">
	<div>
		<iframe allowfullscreen="" frameborder="0" height="150" width="200" data-embed-src="https://www.youtube.com/embed/35GKll6RP9M?feature=oembed"></iframe>
	</div>
</div>

<p>
	Download The Viral Game here for Android: <a href="https://play.google.com/store/apps/details?id=com.customautosys.viralgame" rel="external nofollow">https://play.google.com/store/apps/details?id=com.customautosys.viralgame</a>
</p>

<p>
	Visit <a href="https://customautosys.com/products/covidgame" rel="external nofollow">https://customautosys.com/products/covidgame</a> for The COVID-19 Game for desktop and web (web version works on iOS).
</p>

<p>
	Go on, support vaccination and play The Viral Game now!
</p>
]]></description><guid isPermaLink="false">47476</guid><pubDate>Wed, 30 Jun 2021 10:00:01 +0000</pubDate></item><item><title>SVG</title><link>https://www.html5gamedevs.com/topic/47304-svg/</link><description><![CDATA[
<p>
	Hi Olivier, is it possible to render SVG with MelonJS? Any plans to support SVG?
</p>

<p>
	I have read that it is possible to drawImage an SVG to canvas now: <a href="https://stackoverflow.com/questions/3768565/drawing-an-svg-file-on-a-html5-canvas" rel="external nofollow">https://stackoverflow.com/questions/3768565/drawing-an-svg-file-on-a-html5-canvas</a>. Seems like Three.js renders SVG using WebGL too: <a href="https://threejs.org/docs/#examples/en/renderers/SVGRenderer" rel="external nofollow">https://threejs.org/docs/#examples/en/renderers/SVGRenderer.</a>
</p>
]]></description><guid isPermaLink="false">47304</guid><pubDate>Mon, 17 May 2021 08:15:50 +0000</pubDate></item><item><title>Change image quality</title><link>https://www.html5gamedevs.com/topic/41952-change-image-quality/</link><description><![CDATA[
<p>
	I tried to change image quality in image-rendering css, but whenever i change the value it seems always pixelated.
</p>

<p>
	Because my image is not pixel art, i want the value of image-rendering to optimizeQuality or auto. So can melonjs achieve that?<br />
	<br />
	here is my css <span>:</span>
</p>

<div style="background-color:#1e1e1e;color:#d4d4d4;font-size:14px;">
	<div>
		<span style="color:#9cdcfe;">image-rendering</span><span style="color:#d4d4d4;">: </span><span style="color:#ce9178;">optimizeQuality</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">image-rendering</span><span style="color:#d4d4d4;">: -moz-crisp-edges;</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">image-rendering</span><span style="color:#d4d4d4;">: -o-crisp-edges;</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">image-rendering</span><span style="color:#d4d4d4;">: -webkit-optimize-contrast;</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">image-rendering</span><span style="color:#d4d4d4;">: opti mize-contrast;</span>
	</div>

	<div>
		<span style="color:#9cdcfe;">-ms-interpolation-mode</span><span style="color:#d4d4d4;">: bicubic;</span>
	</div>
</div>
]]></description><guid isPermaLink="false">41952</guid><pubDate>Sat, 05 Jan 2019 05:46:36 +0000</pubDate></item><item><title>Regarding project diagram/UML diagram</title><link>https://www.html5gamedevs.com/topic/47106-regarding-project-diagramuml-diagram/</link><description><![CDATA[
<p>
	Hi,
</p>

<p>
	I am doing a review on your game engine for my software engineering project, just wondering is there any documentation of UML diagrams or any other diagrams to get a high level overview of your project, if not could you suggest a way to do it, please.
</p>

<p>
	Thanks,
</p>

<p>
	Mahbub
</p>
]]></description><guid isPermaLink="false">47106</guid><pubDate>Thu, 01 Apr 2021 09:33:16 +0000</pubDate></item><item><title>Animated tiles</title><link>https://www.html5gamedevs.com/topic/47056-animated-tiles/</link><description><![CDATA[<p>
	I managed to make some animated tiles in Tiled. They're nicely animated there. Now if I load the map in my game, the tiles are just still images. Question: is there anything I must do to get them moving or this should happen automatically? The only thing I found in the docs is the isAnimated property of the TMX layer, which is true in my case. Thanks
</p>]]></description><guid isPermaLink="false">47056</guid><pubDate>Wed, 17 Mar 2021 11:38:11 +0000</pubDate></item><item><title>Walking uphill and downhill</title><link>https://www.html5gamedevs.com/topic/46994-walking-uphill-and-downhill/</link><description><![CDATA[<p>
	I'm somewhat extending the platformer tutorial and trying to write a new game. My problem is that if I draw platform objects in the collision layer that are not completely flat but a diagonal slope for example, the character moves very slowly uphill and slides fast downhill.<br />
	Can you suggest how to implement such a movement that the character would just walk up and down with normal speed, and if he stops he is not sliding down like it's an icy surface? Just like a person would simply stop in the middle of a slope? (Given that the slope is not too steep of course).<br />
	Many thanks.
</p>]]></description><guid isPermaLink="false">46994</guid><pubDate>Wed, 03 Mar 2021 12:10:06 +0000</pubDate></item><item><title>tutorial boilerplate black screen on localhost</title><link>https://www.html5gamedevs.com/topic/46930-tutorial-boilerplate-black-screen-on-localhost/</link><description><![CDATA[
<p>
	Hi melonJS,
</p>

<p>
	I am trying to run the boilerplate tutorial on the local server at localhost8000 as it says in the "readme". I can run it and the tab title says 'boilerplate' so I know it is connected but it the screen remains black. I added the line
</p>

<pre style="background-color:#f5f2f0;border:1px solid #cccccc;color:#000000;font-size:13px;padding:1em;text-align:left;">
<code style="color:#000000;font-size:inherit;padding:0px;text-align:left;">me<span style="color:#999999;">.</span>levelDirector<span style="color:#999999;">.</span><span style="color:#dd4a68;">loadLevel</span><span style="color:#999999;">(</span><span style="color:#669900;">"area_01"</span><span style="color:#999999;">)</span><span style="color:#999999;">;</span></code></pre>

<p>
	to 'play.js'. I named my file with an underscore so it is not 'area01' like in the tutorial.
</p>

<p>
	I added to the index.html, the most recent cdn &lt;script&gt; for melonJS and commented out the old one so you can still see it or make it active again.
</p>

<p>
	I also have changed the value of property 'keepalive' to true from false in the gruntfile.js located at -&gt; boilerplate/gruntfile.js
</p>

<p>
	This made the local server display the melonJS logo/icon one time. Black again afterwards every time.
</p>

<p>
	I have been trying to trace the problem and there is a single error but I cannot locate where it is:
</p>

<p style="color:#000000;">
	<span>Loading "asar.js" tasks...</span><span style="color:#ca3323;">ERROR</span>
</p>

<p style="color:#000000;">
	<span style="color:#ca3323;">&gt;&gt; </span><span>ReferenceError: primordials is not defined</span>
</p>

<p style="color:#000000;">
	<span> </span>
</p>

<p style="color:#000000;">
	<span>I have attached the boilerplate directory that I have been using.</span>
</p>

<p style="color:#000000;">
	 
</p>

<p>
	 
</p>
<p>
<a class="ipsAttachLink" href="https://www.html5gamedevs.com/applications/core/interface/file/attachment.php?id=24469" data-fileExt='zip' data-fileid='24469'>boilerplate.zip</a></p>]]></description><guid isPermaLink="false">46930</guid><pubDate>Thu, 11 Feb 2021 06:19:47 +0000</pubDate></item><item><title>Hitbox moves away from sprite - what am I doing wrong?</title><link>https://www.html5gamedevs.com/topic/47012-hitbox-moves-away-from-sprite-what-am-i-doing-wrong/</link><description><![CDATA[
<p>
	Please take a look at the attached screen recording.
</p>

<p>
	The two interesting hitboxes are the main character and the platform. The platform is an object drawn in the "collision" layer in Tiled according to the instructions the platformer tutorial. I can't figure out why the following things happen:<br /><br />
	1. Why does the main character's hitbox leave the sprite? It moves faster to the right when the screen is scrolling.<br />
	2. Why is the platform fixed on the screen? Shouldn't it be scrolling like the other layers? What makes this layer fixed?
</p>

<p>
	Here is the code for the PlayerEntity which shows that the camera should follow the Entity but it actually follows its renderable. Any help is much appreciated. Thanks.<br />
	 
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted">
<span class="pln">game</span><span class="pun">.</span><span class="typ">PlayerEntity</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> me</span><span class="pun">.</span><span class="typ">Entity</span><span class="pun">.</span><span class="pln">extend</span><span class="pun">({</span><span class="pln">
    
    </span><span class="com">/**
     * constructor
     */</span><span class="pln">
    init </span><span class="pun">:</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">x</span><span class="pun">,</span><span class="pln"> y</span><span class="pun">,</span><span class="pln"> settings</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">_super</span><span class="pun">(</span><span class="pln">me</span><span class="pun">.</span><span class="typ">Entity</span><span class="pun">,</span><span class="pln"> </span><span class="str">'init'</span><span class="pun">,</span><span class="pln"> </span><span class="pun">[</span><span class="pln">x</span><span class="pun">,</span><span class="pln"> y</span><span class="pun">,</span><span class="pln"> settings</span><span class="pun">]);</span><span class="pln">
      me</span><span class="pun">.</span><span class="pln">game</span><span class="pun">.</span><span class="pln">viewport</span><span class="pun">.</span><span class="pln">follow</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">pos</span><span class="pun">,</span><span class="pln"> me</span><span class="pun">.</span><span class="pln">game</span><span class="pun">.</span><span class="pln">viewport</span><span class="pun">.</span><span class="pln">AXIS</span><span class="pun">.</span><span class="pln">BOTH</span><span class="pun">,</span><span class="pln"> </span><span class="lit">0.4</span><span class="pun">);</span><span class="pln">
      </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">body</span><span class="pun">.</span><span class="pln">setMaxVelocity</span><span class="pun">(</span><span class="lit">0.6</span><span class="pun">,</span><span class="pln"> </span><span class="lit">4</span><span class="pun">);</span><span class="pln">
      </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">body</span><span class="pun">.</span><span class="pln">setFriction</span><span class="pun">(</span><span class="lit">0.4</span><span class="pun">,</span><span class="pln"> </span><span class="lit">0</span><span class="pun">);</span><span class="pln">
      </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">body</span><span class="pun">.</span><span class="pln">mass </span><span class="pun">=</span><span class="pln"> </span><span class="lit">1</span><span class="pun">;</span><span class="pln">           
      </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">alwaysUpdate </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">true</span><span class="pun">;</span><span class="pln">
      </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">renderable</span><span class="pun">.</span><span class="pln">addAnimation</span><span class="pun">(</span><span class="str">"walk"</span><span class="pun">,</span><span class="pln"> </span><span class="pun">[</span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="lit">1</span><span class="pun">,</span><span class="pln"> </span><span class="lit">2</span><span class="pun">,</span><span class="pln"> </span><span class="lit">3</span><span class="pun">,</span><span class="pln"> </span><span class="lit">4</span><span class="pun">,</span><span class="pln"> </span><span class="lit">5</span><span class="pun">,</span><span class="pln"> </span><span class="lit">6</span><span class="pun">,</span><span class="pln"> </span><span class="lit">7</span><span class="pun">,</span><span class="pln"> </span><span class="lit">8</span><span class="pun">,</span><span class="pln"> </span><span class="lit">9</span><span class="pun">,</span><span class="pln"> </span><span class="lit">10</span><span class="pun">,</span><span class="pln"> </span><span class="lit">11</span><span class="pun">],</span><span class="pln"> </span><span class="lit">80</span><span class="pun">);</span><span class="pln">
      </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">renderable</span><span class="pun">.</span><span class="pln">setCurrentAnimation</span><span class="pun">(</span><span class="str">"stand"</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">},</span><span class="pln">

    </span><span class="com">/**
     * update the entity
     */</span><span class="pln">
     update </span><span class="pun">:</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">dt</span><span class="pun">)</span><span class="pln">
     </span><span class="pun">{</span><span class="pln">        
        </span><span class="kwd">if</span><span class="pun">(</span><span class="pln">me</span><span class="pun">.</span><span class="pln">input</span><span class="pun">.</span><span class="pln">isKeyPressed</span><span class="pun">(</span><span class="str">'left'</span><span class="pun">))</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
            </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">renderable</span><span class="pun">.</span><span class="pln">flipX</span><span class="pun">(</span><span class="kwd">true</span><span class="pun">);</span><span class="pln">
            </span><span class="kwd">if</span><span class="pun">(!</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">renderable</span><span class="pun">.</span><span class="pln">isCurrentAnimation</span><span class="pun">(</span><span class="str">"walk"</span><span class="pun">))</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
                </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">renderable</span><span class="pun">.</span><span class="pln">setCurrentAnimation</span><span class="pun">(</span><span class="str">"walk"</span><span class="pun">);</span><span class="pln">
            </span><span class="pun">}</span><span class="pln">
            </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">body</span><span class="pun">.</span><span class="pln">force</span><span class="pun">.</span><span class="pln">x </span><span class="pun">=</span><span class="pln"> </span><span class="pun">-</span><span class="lit">0.6</span><span class="pun">;</span><span class="pln">
        </span><span class="pun">}</span><span class="pln">
        </span><span class="kwd">else</span><span class="pln"> </span><span class="kwd">if</span><span class="pun">(</span><span class="pln">me</span><span class="pun">.</span><span class="pln">input</span><span class="pun">.</span><span class="pln">isKeyPressed</span><span class="pun">(</span><span class="str">'right'</span><span class="pun">))</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
            </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">renderable</span><span class="pun">.</span><span class="pln">flipX</span><span class="pun">(</span><span class="kwd">false</span><span class="pun">);</span><span class="pln">
            </span><span class="kwd">if</span><span class="pun">(!</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">renderable</span><span class="pun">.</span><span class="pln">isCurrentAnimation</span><span class="pun">(</span><span class="str">"walk"</span><span class="pun">))</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
                </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">renderable</span><span class="pun">.</span><span class="pln">setCurrentAnimation</span><span class="pun">(</span><span class="str">"walk"</span><span class="pun">);</span><span class="pln">
            </span><span class="pun">}</span><span class="pln">
            </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">body</span><span class="pun">.</span><span class="pln">force</span><span class="pun">.</span><span class="pln">x </span><span class="pun">=</span><span class="pln"> </span><span class="lit">0.6</span><span class="pun">;</span><span class="pln">
        </span><span class="pun">}</span><span class="pln">
        </span><span class="kwd">else</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
            </span><span class="kwd">if</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">renderable</span><span class="pun">.</span><span class="pln">isCurrentAnimation</span><span class="pun">(</span><span class="str">"walk"</span><span class="pun">)</span><span class="pln"> </span><span class="pun">&amp;&amp;</span><span class="pln"> </span><span class="pun">[</span><span class="lit">3</span><span class="pun">,</span><span class="pln"> </span><span class="lit">9</span><span class="pun">].</span><span class="pln">indexOf</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">renderable</span><span class="pun">.</span><span class="pln">getCurrentAnimationFrame</span><span class="pun">())</span><span class="pln"> </span><span class="pun">&gt;</span><span class="pln"> </span><span class="pun">-</span><span class="lit">1</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
                </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">body</span><span class="pun">.</span><span class="pln">force</span><span class="pun">.</span><span class="pln">x </span><span class="pun">=</span><span class="pln"> </span><span class="lit">0</span><span class="pun">;</span><span class="pln">
            </span><span class="pun">}</span><span class="pln">
        </span><span class="pun">}</span><span class="pln">
    
        </span><span class="com">// apply physics to the body (this moves the entity)</span><span class="pln">
        </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">body</span><span class="pun">.</span><span class="pln">update</span><span class="pun">(</span><span class="pln">dt</span><span class="pun">);</span><span class="pln">
        </span><span class="com">// handle collisions against other shapes</span><span class="pln">
        me</span><span class="pun">.</span><span class="pln">collision</span><span class="pun">.</span><span class="pln">check</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">);</span><span class="pln">
  
        </span><span class="com">// return true if we moved or if the renderable was updated</span><span class="pln">
        </span><span class="kwd">return</span><span class="pln"> </span><span class="pun">(</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">_super</span><span class="pun">(</span><span class="pln">me</span><span class="pun">.</span><span class="typ">Entity</span><span class="pun">,</span><span class="pln"> </span><span class="str">'update'</span><span class="pun">,</span><span class="pln"> </span><span class="pun">[</span><span class="pln">dt</span><span class="pun">])</span><span class="pln"> </span><span class="pun">||</span><span class="pln"> </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">body</span><span class="pun">.</span><span class="pln">vel</span><span class="pun">.</span><span class="pln">x </span><span class="pun">!==</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">||</span><span class="pln"> </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">body</span><span class="pun">.</span><span class="pln">vel</span><span class="pun">.</span><span class="pln">y </span><span class="pun">!==</span><span class="pln"> </span><span class="lit">0</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">},</span><span class="pln">
  
    </span><span class="com">/**
     * colision handler
     * (called when colliding with other objects)
     */</span><span class="pln">
    onCollision </span><span class="pun">:</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">response</span><span class="pun">,</span><span class="pln"> other</span><span class="pun">)</span><span class="pln">
    </span><span class="pun">{</span><span class="pln">
      </span><span class="com">// Make all other objects solid</span><span class="pln">
      </span><span class="kwd">return</span><span class="pln"> </span><span class="kwd">true</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span></pre>

<p>
	<br />
	 
</p>

<video controls class="ipsEmbeddedVideo" data-fileid="24525" data-controller="core.global.core.embeddedvideo">
	<source src="https://www.html5gamedevs.com/uploads/monthly_2021_03/objects_bug.mp4.fc5fefc622951578d50f46a91bb317a9.mp4" type="video/mp4">
	<a class="ipsAttachLink" href="//www.html5gamedevs.com/applications/core/interface/file/attachment.php?id=24525">objects_bug.mp4</a>
</video>]]></description><guid isPermaLink="false">47012</guid><pubDate>Sun, 07 Mar 2021 09:52:54 +0000</pubDate></item><item><title>New User, Nothing is working!</title><link>https://www.html5gamedevs.com/topic/45234-new-user-nothing-is-working/</link><description><![CDATA[
<p>
	Hello, I just browsed through all of the threads. Nothing to help my issue.
</p>

<p>
	I have downloaded and tried the boilerplates platformer and space invaders. No matter what I do, nothing runs. Just a black screen.
</p>

<p>
	I'm running them locally, using a Laragon apache server. The documentation seems to say that I don't need to use nodejs or grunt. But the boilerplate git says I need both node and grunt. I've been trying over and over, different ways, since yesterday, and I'm about to quit. Can someone help me get these things running? Thanks!
</p>

<p>
	 
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">45234</guid><pubDate>Thu, 23 Apr 2020 20:04:16 +0000</pubDate></item><item><title>Question of melonjs scale method</title><link>https://www.html5gamedevs.com/topic/46647-question-of-melonjs-scale-method/</link><description><![CDATA[
<div>
	Hi, I have a beginner's question about melonjs.
</div>

<div>
	 
</div>

<div>
	If I run '&lt;any sprite object&gt;.scale(2);', then the sprite will move a little to the upper left on the screen, and the sprite's appearance will be about four times as large.
</div>

<div>
	The anchorPoint of the sprite is (0.5,0.5)(=default), so I think the sprite can't move, it just doubles the size of the sprite, but what's wrong with my code?
</div>

<div>
	 
</div>

<div>
	My environment is melonjs 8.0.1, browser is chrome, OS is macOS High sierra.
</div>

<div>
	 
</div>

<div>
	Thank you.
</div>
]]></description><guid isPermaLink="false">46647</guid><pubDate>Tue, 08 Dec 2020 06:12:36 +0000</pubDate></item><item><title>Newbie question: move tile layer</title><link>https://www.html5gamedevs.com/topic/46758-newbie-question-move-tile-layer/</link><description><![CDATA[
<p>
	Folks
</p>

<p>
	I have been playing a little with Melon JS and I really like it. I started with the platformer tutorial which works fine. Now I would like to add a parallax effect to the tile layers as well but I'm stuck. Here's what I tried so far:
</p>

<p>
	1. Add the property "ratio" to the layer - OK it didn't work, it works for image layers only.<br />
	2. I have tried to update the layer's position like this:
</p>

<pre>
<code>var layer = me.game.world.getChildByName("Background1")[0];
layer.pos.x = layer.pos.x + 1; // move the layer by one pixel</code></pre>

<p>
	But it didn't work, the layer didn't move. Funny thing is, if I add a value, say 600, the layer disappears (I guess it's outside the viewport then). If I reset to 0 it appears back again. I can also flip it using <em>layer.flipY(true);</em> So something is working, but I cannot get it moving for some reason.<br /><br />
	Any suggestions are well apreciated.
</p>
]]></description><guid isPermaLink="false">46758</guid><pubDate>Mon, 04 Jan 2021 21:30:30 +0000</pubDate></item><item><title>Multiple shaders</title><link>https://www.html5gamedevs.com/topic/46574-multiple-shaders/</link><description><![CDATA[
<p>
	Hi,
</p>

<p>
	 
</p>

<p>
	I'm experimenting with shaders, and find it quite fun. But I'm running into a problem. I don't want the same shader for everything.
</p>

<p>
	Currently I'm initialising the video with a custom compositor. This works fine, but is using the same shader for everything. Is there a way to use one compositor/shader for some of the 'Renderable's but not others? Or is the solution to somehow tell the shader which 'mode' it's in?
</p>

<p>
	 
</p>

<p>
	I'm testing to have my 2d map lit up by different lights, but that should not have an effect on the HUD..
</p>
]]></description><guid isPermaLink="false">46574</guid><pubDate>Thu, 26 Nov 2020 10:21:50 +0000</pubDate></item><item><title>Falls back to CANVAS renderer</title><link>https://www.html5gamedevs.com/topic/46715-falls-back-to-canvas-renderer/</link><description><![CDATA[<p>
	Noticed that the game was a bit jumpy on an old laptop. Upon further examination, failIfMajorPerformaceCaveat was causing this behavior. In a previous version this was not the case.
</p>]]></description><guid isPermaLink="false">46715</guid><pubDate>Tue, 22 Dec 2020 17:36:20 +0000</pubDate></item><item><title>SoulVampire</title><link>https://www.html5gamedevs.com/topic/46690-soulvampire/</link><description><![CDATA[
<p>
	I have an emitter in the game that called when the player moves left as a test of dust particles the code for calling the emitter is as follows
</p>

<div style="background-color:#1e1e1e;color:#d4d4d4;font-size:14px;">
	<div>
		<span style="color:#6a9955;">/************************/</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">      </span><span style="color:#6a9955;">/* left player movement */</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">      </span><span style="color:#6a9955;">/************************/</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">      </span><span style="color:#c586c0;">case</span><span style="color:#d4d4d4;"> </span><span style="color:#4fc1ff;">player_states</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">player_facing_left</span><span style="color:#d4d4d4;">:</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">body</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">setMaxVelocity</span><span style="color:#d4d4d4;">(</span><span style="color:#b5cea8;">2</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">10</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">body</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">force</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">y</span><span style="color:#d4d4d4;"> = </span><span style="color:#b5cea8;">0</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">body</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">force</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">x</span><span style="color:#d4d4d4;"> = </span><span style="color:#b5cea8;">0</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#6a9955;">// update the default force</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">body</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">vel</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">x</span><span style="color:#d4d4d4;"> -= </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">body</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">maxVel</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">x</span><span style="color:#d4d4d4;"> * </span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">timer</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">tick</span><span style="color:#d4d4d4;">;</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#6a9955;">// flip the sprite on horizontal axis</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">renderable</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">flipX</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">true</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#6a9955;">// change to the walking left animation</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#c586c0;">if</span><span style="color:#d4d4d4;"> (!</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">renderable</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">isCurrentAnimation</span><span style="color:#d4d4d4;">(</span><span style="color:#ce9178;">"walk"</span><span style="color:#d4d4d4;">)) </span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        {</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">          </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">body</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">removeShape</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">body</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">getShape</span><span style="color:#d4d4d4;">(</span><span style="color:#b5cea8;">0</span><span style="color:#d4d4d4;">));</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">          </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">body</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">addShape</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">new</span><span style="color:#d4d4d4;"> </span><span style="color:#4ec9b0;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#4ec9b0;">Rect</span><span style="color:#d4d4d4;">(</span><span style="color:#b5cea8;">0</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">0</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">22</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">57</span><span style="color:#d4d4d4;">));</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">          </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">anchorPoint</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">set</span><span style="color:#d4d4d4;">(</span><span style="color:#b5cea8;">0.5</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">0.5</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">          </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">renderable</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">setCurrentAnimation</span><span style="color:#d4d4d4;">(</span><span style="color:#ce9178;">"walk"</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">          </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">playerDustTrails</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">pos</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">x</span><span style="color:#d4d4d4;">,</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">pos</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">y</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        }</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">      </span><span style="color:#c586c0;">break</span><span style="color:#d4d4d4;">;</span>
	</div>
</div>

<p>
	then when the player moves left this code is called to create the emitter and draw a dust particles as the player moves over the ground
</p>

<div style="background-color:#1e1e1e;color:#d4d4d4;font-size:14px;">
	<div>
		<span style="color:#d4d4d4;"> </span><span style="color:#6a9955;">/*********************************/</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">  </span><span style="color:#6a9955;">/* dust particle emitter handler */</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">  </span><span style="color:#6a9955;">/*********************************/</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">  </span><span style="color:#4ec9b0;">playerDustTrails</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">function</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">player_xPos</span><span style="color:#d4d4d4;">, </span><span style="color:#9cdcfe;">player_yPos</span><span style="color:#d4d4d4;">)</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">  {</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">    </span><span style="color:#9cdcfe;">console</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">log</span><span style="color:#d4d4d4;">(</span><span style="color:#ce9178;">"here in dust "</span><span style="color:#d4d4d4;"> + </span><span style="color:#9cdcfe;">Math</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">floor</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">player_xPos</span><span style="color:#d4d4d4;">));</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">    </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">image</span><span style="color:#d4d4d4;"> = </span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">loader</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">getImage</span><span style="color:#d4d4d4;">(</span><span style="color:#ce9178;">"dust_particle"</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">    </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">player_dust_emitter</span><span style="color:#d4d4d4;"> = </span><span style="color:#569cd6;">new</span><span style="color:#d4d4d4;"> </span><span style="color:#4ec9b0;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#4ec9b0;">ParticleEmitter</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">Math</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">floor</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">player_xPos</span><span style="color:#d4d4d4;">), </span><span style="color:#9cdcfe;">Math</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">floor</span><span style="color:#d4d4d4;">(</span><span style="color:#9cdcfe;">player_yPos</span><span style="color:#d4d4d4;">), {</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#9cdcfe;">image</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">image</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#9cdcfe;">totalParticles</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#b5cea8;">1</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#9cdcfe;">angle</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#b5cea8;">3.142</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#9cdcfe;">minLife</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#b5cea8;">1000</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#9cdcfe;">maxLife</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#b5cea8;">3000</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#9cdcfe;">speedVariation</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#b5cea8;">0</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#9cdcfe;">maxParticles</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#b5cea8;">1</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#9cdcfe;">frequency</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#b5cea8;">10</span><span style="color:#d4d4d4;">,</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">        </span><span style="color:#9cdcfe;">duration</span><span style="color:#9cdcfe;">:</span><span style="color:#d4d4d4;"> </span><span style="color:#b5cea8;">300</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">    });</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">    </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">player_dust_emitter</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">z</span><span style="color:#d4d4d4;"> = </span><span style="color:#b5cea8;">100</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">    </span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">world</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">addChild</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">player_dust_emitter</span><span style="color:#d4d4d4;">, </span><span style="color:#b5cea8;">100</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">    </span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">player_dust_emitter</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">burstParticles</span><span style="color:#d4d4d4;">();</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">    </span><span style="color:#9cdcfe;">me</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">game</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">world</span><span style="color:#d4d4d4;">.</span><span style="color:#dcdcaa;">removeChild</span><span style="color:#d4d4d4;">(</span><span style="color:#569cd6;">this</span><span style="color:#d4d4d4;">.</span><span style="color:#9cdcfe;">player_dust_emitter</span><span style="color:#d4d4d4;">);</span>
	</div>

	<div>
		<span style="color:#d4d4d4;">  },</span>
	</div>
</div>

<p>
	but when its added to the game world nothing is displayed no dust, but I have checked the code with examples and there seems nothing wrong, but no dust, image is loaded fine as no error when loading image so thats fine, but unable to see where the error is...it should work
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">46690</guid><pubDate>Wed, 16 Dec 2020 21:04:06 +0000</pubDate></item><item><title>Check if points of line are overlapping circle</title><link>https://www.html5gamedevs.com/topic/46519-check-if-points-of-line-are-overlapping-circle/</link><description><![CDATA[
<p>
	In Melon JS 8.0, how can I create a draggable line and check if, when dragged, it overlaps two circles?
</p>

<p>
	The start point of the line and end point of the line should be checked for overlap. I.e., the center of the line overlapping the circle shouldn't count.
</p>

<p>
	<a contenteditable="false" data-ipshover="" data-ipshover-target="https://www.html5gamedevs.com/profile/24596-obiot/?do=hovercard" data-mentionid="24596" href="https://www.html5gamedevs.com/profile/24596-obiot/" rel="">@obiot</a>
</p>

<p><a href="https://www.html5gamedevs.com/uploads/monthly_2020_11/1916041766_ScreenShot2020-11-17at8_39_23AM.png.5150bcb2d9bdbe10835ae56c21e0fdf0.png" class="ipsAttachLink ipsAttachLink_image"><img data-fileid="24135" src="https://www.html5gamedevs.com/uploads/monthly_2020_11/649426160_ScreenShot2020-11-17at8_39_23AM.thumb.png.218e7ec4d21dfbb29f12ca0c9df37e8a.png" data-ratio="41.1" width="1000" class="ipsImage ipsImage_thumbnailed" alt="Screen Shot 2020-11-17 at 8.39.23 AM.png"></a></p>]]></description><guid isPermaLink="false">46519</guid><pubDate>Tue, 17 Nov 2020 14:04:49 +0000</pubDate></item><item><title>MelonJS sample source not working</title><link>https://www.html5gamedevs.com/topic/46282-melonjs-sample-source-not-working/</link><description><![CDATA[
<p>
	Hi there, I've installed the MelonJS Platform tutorial exactly as described, and unfortunately it is not working.
</p>

<p>
	at first it needs a bunch of grunt files installed, so I've done that now I just get a black screen (and melonJS won't load) on localhost:8000
</p>

<p>
	the only error is see when running npm run serve is
</p>

<p>
	"Local Npm module "grunt-asar" not found. Is it installed?"
</p>

<p>
	can anyone help me? It's really unfortunate to see the MelonJS Platform broken like this.
</p>

<p>
	I did install it a few years ago successfully, but something now is so wrong! Can anyone help me figure out what I'm doing wrong?
</p>

<p>
	 
</p>

<p>
	Thanks!
</p>

<p>
	 
</p>

<p><a href="https://www.html5gamedevs.com/uploads/monthly_2020_10/blackscreen.png.c91188947e3b15d20cdfc3d6314b3b66.png" class="ipsAttachLink ipsAttachLink_image"><img data-fileid="23912" src="https://www.html5gamedevs.com/uploads/monthly_2020_10/blackscreen.thumb.png.091f9fdbab9ad80a2b9469ae9451d592.png" data-ratio="49.4" width="1000" class="ipsImage ipsImage_thumbnailed" alt="blackscreen.png"></a></p>]]></description><guid isPermaLink="false">46282</guid><pubDate>Tue, 06 Oct 2020 16:32:41 +0000</pubDate></item><item><title>CDN and NPM install</title><link>https://www.html5gamedevs.com/topic/42548-cdn-and-npm-install/</link><description><![CDATA[
<p>
	For those who have not noticed yet, since with <a href="https://www.html5gamedevs.com/topic/42505-melonjs-700/" rel="">version 7.0.0</a>, melonJS is now officially available through <a href="https://www.npmjs.com/package/melonjs" rel="external nofollow">NPM</a>, it means as well that the latest build of melonJS can now install through NPM or/and available through the jsdeliver CDN.
</p>

<p>
	for NPM <span>:</span>
</p>

<pre>
<code>$ npm install melonjs</code></pre>

<p>
	<br />
	For delivery through jsdelivr content delivery network (CDN) URL  :
</p>

<pre>
<code>&lt;script src="https://cdn.jsdelivr.net/npm/melonjs@7.0.0/dist/melonjs.js"&gt;&lt;/script&gt;</code></pre>

<p>
	or the following for the minified version :
</p>

<pre>
<code>&lt;script src="https://cdn.jsdelivr.net/npm/melonjs@7.0.0/dist/melonjs.min.js"&gt;&lt;/script&gt;</code></pre>

<p>
	and of course the debug panel <span>:</span>
</p>

<pre>
<code>&lt;script src="https://cdn.jsdelivr.net/npm/melonjs@7.0.0/plugins/debug/debugPanel.js"&gt;&lt;/script&gt;</code></pre>

<p>
	 
</p>

<p>
	<br />
	Note: "official" CDN and NPM install are only available from version 7.0.0 and onwards.
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">42548</guid><pubDate>Tue, 02 Apr 2019 02:20:18 +0000</pubDate></item></channel></rss>
