Better main menu cursor implementation using projectiles.

origin
YandolsZX 5 years ago
parent b5698eeba5
commit 7d502b3115
  1. BIN
      Animations/MM_Barrier/Default/000.png
  2. BIN
      Animations/MM_Cursor_Projectile/Default/000.png
  3. 2
      Event sheets/ES - Main Menu.uistate.xml
  4. 135
      Event sheets/ES - Main Menu.xml
  5. 4
      Layouts/Main Menu.uistate.xml
  6. 119
      Layouts/Main Menu.xml
  7. 55
      Resistance Saga FYP.caproj
  8. BIN
      Resistance Saga FYP.capx.backup1
  9. 2
      Resistance Saga FYP.uistate.xml

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 217 B

@ -4,7 +4,7 @@
It is entirely optional and the project will load without it. If you are placing the project under source control,
you probably do not want to add any .uistate.xml files to the repository.-->
<show-addaction-links>1</show-addaction-links>
<scroll-pos>0</scroll-pos>
<scroll-pos>50</scroll-pos>
<conditions-column>240</conditions-column>
<actions-namecolumn>156</actions-namecolumn>
<condition-namecolumns>

@ -4,6 +4,7 @@
<name>ES - Main Menu</name>
<events>
<variable constant="0" name="MMCursorPosition" sid="369508152281122" static="0" type="number">0</variable>
<variable constant="0" name="MMCursorProjectileCD" sid="991957726972338" static="0" type="number">0</variable>
<comment>Screen Initiator</comment>
<event-block sid="754797739548186">
<conditions>
@ -26,143 +27,99 @@
</actions>
</event-block>
<comment>Cursor Position Manipulator</comment>
<event-block sid="293563397982497">
<event-block sid="806731101159712">
<conditions>
<condition id="3" name="On key released" sid="533922688470572" type="Keyboard">
<condition id="2" name="Key is down" sid="373375725050225" type="Keyboard">
<param id="0" name="Key">40 (Down arrow)</param>
</condition>
<condition id="-14" name="Compare variable" sid="684700834177621" type="System">
<param id="0" name="Variable">MMCursorPosition</param>
<param id="1" name="Comparison">0</param>
<param id="2" name="Value">0</param>
</condition>
</conditions>
<actions>
<action id="-9" name="Set value" sid="801459798411753" type="System">
<param id="0" name="Variable">MMCursorPosition</param>
<param id="1" name="Value">1</param>
</action>
<action id="-16" name="Wait" sid="432320226116178" type="System">
<param id="0" name="Seconds">0.5</param>
</action>
<action disabled="1" id="0" name="Set text" sid="983350988705739" type="MM_TFLoadGame">
<param id="0" name="Text">MMCursorPosition</param>
<action behavior="8Direction" id="7" name="Simulate control" sid="805891542041645" type="MM_Cursor">
<param id="0" name="Control">3</param>
</action>
</actions>
</event-block>
<event-block sid="379937412054660">
<event-block sid="949760597058576">
<conditions>
<condition id="3" name="On key released" sid="982333877025057" type="Keyboard">
<param id="0" name="Key">40 (Down arrow)</param>
</condition>
<condition id="-14" name="Compare variable" sid="366346298360168" type="System">
<param id="0" name="Variable">MMCursorPosition</param>
<param id="1" name="Comparison">0</param>
<param id="2" name="Value">1</param>
<condition id="2" name="Key is down" sid="742149715033428" type="Keyboard">
<param id="0" name="Key">38 (Up arrow)</param>
</condition>
</conditions>
<actions>
<action id="-9" name="Set value" sid="165191737875843" type="System">
<param id="0" name="Variable">MMCursorPosition</param>
<param id="1" name="Value">2</param>
</action>
<action id="-16" name="Wait" sid="279001782466726" type="System">
<param id="0" name="Seconds">0.5</param>
</action>
<action disabled="1" id="0" name="Set text" sid="136668121185837" type="MM_TFLoadGame">
<param id="0" name="Text">MMCursorPosition</param>
<action behavior="8Direction" id="7" name="Simulate control" sid="149330234966931" type="MM_Cursor">
<param id="0" name="Control">2</param>
</action>
</actions>
</event-block>
<event-block sid="704399995971443">
<event-block sid="691028404037370">
<conditions>
<condition id="3" name="On key released" sid="779587687768671" type="Keyboard">
<param id="0" name="Key">38 (Up arrow)</param>
<condition id="2" name="Key is down" sid="744778682864002" type="Keyboard">
<param id="0" name="Key">32 (Space)</param>
</condition>
<condition id="-14" name="Compare variable" sid="725117270546887" type="System">
<param id="0" name="Variable">MMCursorPosition</param>
<condition id="-14" name="Compare variable" sid="539073029226978" type="System">
<param id="0" name="Variable">MMCursorProjectileCD</param>
<param id="1" name="Comparison">0</param>
<param id="2" name="Value">2</param>
<param id="2" name="Value">0</param>
</condition>
</conditions>
<actions>
<action id="-9" name="Set value" sid="720681610726605" type="System">
<param id="0" name="Variable">MMCursorPosition</param>
<param id="1" name="Value">1</param>
<action id="0" name="Spawn another object" sid="121350911024047" type="MM_Cursor">
<param id="0" name="Object">MM_Cursor_Projectile</param>
<param id="1" name="Layer">1</param>
<param id="2" name="Image point">0</param>
</action>
<action id="-16" name="Wait" sid="759820834066998" type="System">
<param id="0" name="Seconds">0.5</param>
<action id="-9" name="Set value" sid="186071965671642" type="System">
<param id="0" name="Variable">MMCursorProjectileCD</param>
<param id="1" name="Value">1</param>
</action>
<action disabled="1" id="0" name="Set text" sid="753892701506034" type="MM_TFLoadGame">
<param id="0" name="Text">MMCursorPosition</param>
<action id="-16" name="Wait" sid="229583434735390" type="System">
<param id="0" name="Seconds">1.1</param>
</action>
</actions>
</event-block>
<event-block sid="501635461232996">
<conditions>
<condition id="3" name="On key released" sid="258966565567909" type="Keyboard">
<param id="0" name="Key">38 (Up arrow)</param>
</condition>
<condition id="-14" name="Compare variable" sid="157235255202846" type="System">
<param id="0" name="Variable">MMCursorPosition</param>
<param id="1" name="Comparison">0</param>
<param id="2" name="Value">1</param>
</condition>
</conditions>
<actions>
<action id="-9" name="Set value" sid="456923621994690" type="System">
<param id="0" name="Variable">MMCursorPosition</param>
<action id="-9" name="Set value" sid="552848219452433" type="System">
<param id="0" name="Variable">MMCursorProjectileCD</param>
<param id="1" name="Value">0</param>
</action>
<action id="-16" name="Wait" sid="822685033761659" type="System">
<param id="0" name="Seconds">0.5</param>
</action>
<action disabled="1" id="0" name="Set text" sid="459372806546476" type="MM_TFLoadGame">
<param id="0" name="Text">MMCursorPosition</param>
</action>
</actions>
</event-block>
<comment>Cursor Position Actions</comment>
<event-block sid="197593168935831">
<event-block sid="253450489881516">
<conditions>
<condition id="-14" name="Compare variable" sid="302444838811757" type="System">
<param id="0" name="Variable">MMCursorPosition</param>
<param id="1" name="Comparison">0</param>
<param id="2" name="Value">0</param>
<condition id="0" name="On collision with another object" sid="492836453937580" type="MM_Cursor_Projectile">
<param id="0" name="Object">MM_TFNewGame</param>
</condition>
</conditions>
<actions>
<action id="-2" name="Set Y" sid="272324874344481" type="MM_Cursor">
<param id="0" name="Y">452</param>
<action id="-16" name="Wait" sid="814567450030372" type="System">
<param id="0" name="Seconds">0.5</param>
</action>
<action id="-9" name="Destroy" sid="956200627377454" type="MM_Cursor_Projectile" />
</actions>
</event-block>
<event-block sid="660396516248223">
<event-block sid="625027985250192">
<conditions>
<condition id="-14" name="Compare variable" sid="437978231352857" type="System">
<param id="0" name="Variable">MMCursorPosition</param>
<param id="1" name="Comparison">0</param>
<param id="2" name="Value">1</param>
<condition id="0" name="On collision with another object" sid="102659883628277" type="MM_Cursor_Projectile">
<param id="0" name="Object">MM_TFLoadGame</param>
</condition>
</conditions>
<actions>
<action id="-2" name="Set Y" sid="689490647204047" type="MM_Cursor">
<param id="0" name="Y">532</param>
<action id="-16" name="Wait" sid="328578109093946" type="System">
<param id="0" name="Seconds">0.5</param>
</action>
<action id="-9" name="Destroy" sid="627717160874167" type="MM_Cursor_Projectile" />
</actions>
</event-block>
<event-block sid="548369208288570">
<event-block sid="472463975482474">
<conditions>
<condition id="-14" name="Compare variable" sid="828332676942394" type="System">
<param id="0" name="Variable">MMCursorPosition</param>
<param id="1" name="Comparison">0</param>
<param id="2" name="Value">2</param>
<condition id="0" name="On collision with another object" sid="107505767447722" type="MM_Cursor_Projectile">
<param id="0" name="Object">MM_TFExitGame</param>
</condition>
</conditions>
<actions>
<action id="-2" name="Set Y" sid="194202572889282" type="MM_Cursor">
<param id="0" name="Y">612</param>
<action id="-16" name="Wait" sid="823622601878732" type="System">
<param id="0" name="Seconds">0.8</param>
</action>
<action id="-9" name="Destroy" sid="260917658666180" type="MM_Cursor_Projectile" />
<action id="1" name="Close" sid="649549831221963" type="Browser" />
</actions>
</event-block>
</events>

@ -5,10 +5,10 @@ It is entirely optional and the project will load without it. If you are placin
you probably do not want to add any .uistate.xml files to the repository.-->
<camera>
<position-x>637.658</position-x>
<position-y>415</position-y>
<position-y>465</position-y>
<position-z>100</position-z>
<lookat-x>637.658</lookat-x>
<lookat-y>415</lookat-y>
<lookat-y>465</lookat-y>
<lookat-z>0</lookat-z>
</camera>
<snap-to-grid>0</snap-to-grid>

@ -170,6 +170,32 @@
<initial-frame>0</initial-frame>
<collisions>Enabled</collisions>
</properties>
<behavior-instances>
<behavior-instance type="Sine">
<properties>
<active-on-start>Yes</active-on-start>
<movement>Horizontal</movement>
<wave>Sine</wave>
<period>4</period>
<period-random>0</period-random>
<period-offset>0</period-offset>
<period-offset-random>0</period-offset-random>
<magnitude>10</magnitude>
<magnitude-random>0</magnitude-random>
</properties>
</behavior-instance>
<behavior-instance type="8Direction">
<properties>
<max-speed>1000</max-speed>
<acceleration>1000</acceleration>
<deceleration>1200</deceleration>
<directions>Up &amp; down</directions>
<set-angle>No</set-angle>
<default-controls>No</default-controls>
<initial-state>Enabled</initial-state>
</properties>
</behavior-instance>
</behavior-instances>
<blend-mode>0</blend-mode>
<effect-fallback>0</effect-fallback>
<world>
@ -185,6 +211,99 @@
<opacity>1</opacity>
</world>
</instance>
<instance type="MM_Barrier" uid="48">
<properties>
<initial-visibility>Visible</initial-visibility>
<initial-animation>Default</initial-animation>
<initial-frame>0</initial-frame>
<collisions>Enabled</collisions>
</properties>
<behavior-instances>
<behavior-instance type="Solid">
<properties>
<initial-state>Enabled</initial-state>
</properties>
</behavior-instance>
</behavior-instances>
<blend-mode>0</blend-mode>
<effect-fallback>0</effect-fallback>
<world>
<x>520</x>
<y>405</y>
<z>0</z>
<width>64</width>
<height>64</height>
<depth>0</depth>
<hotspotX>0.5</hotspotX>
<hotspotY>0.5</hotspotY>
<angle>0</angle>
<opacity>1</opacity>
</world>
</instance>
<instance type="MM_Barrier" uid="49">
<properties>
<initial-visibility>Visible</initial-visibility>
<initial-animation>Default</initial-animation>
<initial-frame>0</initial-frame>
<collisions>Enabled</collisions>
</properties>
<behavior-instances>
<behavior-instance type="Solid">
<properties>
<initial-state>Enabled</initial-state>
</properties>
</behavior-instance>
</behavior-instances>
<blend-mode>0</blend-mode>
<effect-fallback>0</effect-fallback>
<world>
<x>520</x>
<y>655</y>
<z>0</z>
<width>64</width>
<height>64</height>
<depth>0</depth>
<hotspotX>0.5</hotspotX>
<hotspotY>0.5</hotspotY>
<angle>0</angle>
<opacity>1</opacity>
</world>
</instance>
<instance type="MM_Cursor_Projectile" uid="50">
<properties>
<initial-visibility>Visible</initial-visibility>
<initial-animation>Default</initial-animation>
<initial-frame>0</initial-frame>
<collisions>Enabled</collisions>
</properties>
<behavior-instances>
<behavior-instance type="Bullet">
<properties>
<speed>400</speed>
<acceleration>0</acceleration>
<gravity>0</gravity>
<bounce-off-solids>No</bounce-off-solids>
<set-angle>Yes</set-angle>
<initial-state>Enabled</initial-state>
</properties>
</behavior-instance>
<behavior-instance type="DestroyOutsideLayout" />
</behavior-instances>
<blend-mode>0</blend-mode>
<effect-fallback>0</effect-fallback>
<world>
<x>586</x>
<y>742</y>
<z>0</z>
<width>10</width>
<height>12</height>
<depth>0</depth>
<hotspotX>0.5</hotspotX>
<hotspotY>0.5</hotspotY>
<angle>0</angle>
<opacity>1</opacity>
</world>
</instance>
</instances>
<effects />
</layer>

@ -11,6 +11,7 @@
<saved-with-version>24400</saved-with-version>
<used-plugins>
<plugin author="Scirra" id="Audio" version="1">Audio</plugin>
<plugin author="Scirra" id="Browser" version="1">Browser</plugin>
<plugin author="Scirra" id="Keyboard" version="1">Keyboard</plugin>
<plugin author="Scirra" id="Sprite" version="1">Sprite</plugin>
<plugin author="Scirra" id="Spritefont2" version="1">Sprite font</plugin>
@ -21,9 +22,11 @@
</used-plugins>
<used-behaviors>
<behavior author="Scirra" id="Bullet" version="1">Bullet</behavior>
<behavior author="Scirra" id="EightDir" version="1">8 Direction</behavior>
<behavior author="Scirra" id="Fade" version="1">Fade</behavior>
<behavior author="Scirra" id="Platform" version="1">Platform</behavior>
<behavior author="Scirra" id="Sin" version="1">Sine</behavior>
<behavior author="Scirra" id="destroy" version="1">Destroy outside layout</behavior>
<behavior author="Scirra" id="jumpthru" version="1">Jump-thru</behavior>
<behavior author="Scirra" id="scrollto" version="1">Scroll To</behavior>
<behavior author="Scirra" id="solid" version="1">Solid</behavior>
@ -510,6 +513,14 @@
</object-type>
<object-type name="MM_Cursor" sid="222063632853027">
<plugin id="Sprite" />
<behaviors>
<behavior-type name="Sine" sid="559463413598698">
<behavior id="Sin" />
</behavior-type>
<behavior-type name="8Direction" sid="533286190809805">
<behavior id="EightDir" />
</behavior-type>
</behaviors>
<animation-folder>
<animation framecount="1" loop="0" name="Default" pingpong="0" repeatcount="1" repeatto="0" sid="605659802340973" speed="5">
<frame duration="1" hotspotX="0.5" hotspotY="0.5" original-source="C:\Users\yando\AppData\Local\Temp\Rar$DRa1212.34542\Ardentryst-GUICursorsArrowsIconsMarkers\Ardentryst-Arrowright.png">
@ -527,6 +538,49 @@
</animation>
</animation-folder>
</object-type>
<object-type name="MM_Barrier" sid="783542401575242">
<plugin id="Sprite" />
<behaviors>
<behavior-type name="Solid" sid="465877171859607">
<behavior id="solid" />
</behavior-type>
</behaviors>
<animation-folder>
<animation framecount="1" loop="0" name="Default" pingpong="0" repeatcount="1" repeatto="0" sid="413803842398204" speed="5">
<frame duration="1" hotspotX="0.5" hotspotY="0.5" />
</animation>
</animation-folder>
</object-type>
<object-type name="MM_Cursor_Projectile" sid="743698181708448">
<plugin id="Sprite" />
<behaviors>
<behavior-type name="Bullet" sid="197581786451971">
<behavior id="Bullet" />
</behavior-type>
<behavior-type name="DestroyOutsideLayout" sid="572849392845866">
<behavior id="destroy" />
</behavior-type>
</behaviors>
<animation-folder>
<animation framecount="1" loop="0" name="Default" pingpong="0" repeatcount="1" repeatto="0" sid="440468083377816" speed="5">
<frame duration="1" hotspotX="0.5" hotspotY="0.5" original-source="C:\Users\yando\AppData\Local\Temp\Rar$DRa8068.32139\Ardentryst-GUICursorsArrowsIconsMarkers\Ardentryst-Next_Page_Icon.png">
<collision-poly>
<point x="0.1" y="0.916667" />
<point x="0" y="0.5" />
<point x="0.1" y="0.0833333" />
<point x="0.5" y="0.25" />
<point x="0.6" y="0.333333" />
<point x="0.9" y="0.5" />
<point x="0.6" y="0.666667" />
<point x="0.5" y="0.75" />
</collision-poly>
</frame>
</animation>
</animation-folder>
</object-type>
<object-type name="Browser" sid="585757905928388">
<plugin id="Browser" />
</object-type>
</object-folder>
<families />
<layout-folder>
@ -557,6 +611,7 @@
<roll-off-factor>1</roll-off-factor>
</properties>
</global-instance>
<global-instance type="Browser" uid="51" />
</global-instances>
<sounds-folder>
<file name="FS_PreTitleChime_First.ogg" />

Binary file not shown.

@ -50,5 +50,7 @@ you probably do not want to add any .uistate.xml files to the repository.-->
<folder expanded="1" path="animation-folder/IS_FS_PreTitle1/" />
<folder expanded="1" path="animation-folder/IS_FS_PreTitle2/" />
<folder expanded="1" path="animation-folder/MM_Cursor/" />
<folder expanded="1" path="animation-folder/MM_Barrier/" />
<folder expanded="1" path="animation-folder/MM_Cursor_Projectile/" />
</folders-expanded>
</c2uistate>

Loading…
Cancel
Save