summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--res/fmod/.cache/fsbcache/Desktop/3019A628.fobjbin0 -> 1421014 bytes
-rw-r--r--res/fmod/.cache/fsbcache/Desktop/C8D72C41.fobjbin0 -> 1387706 bytes
-rw-r--r--res/fmod/.cache/{598d696a-a866-4860-8a80-85745ab8b7ef}.pdcbin0 -> 846768 bytes
-rw-r--r--res/fmod/.cache/{b81d31bd-fdcd-4402-a741-3947adc1b7dc}.pdcbin0 -> 846768 bytes
-rw-r--r--res/fmod/.cache/{e4ee2376-d790-4e2c-8a64-9c08953d0f04}.pdcbin1024 -> 1024 bytes
-rw-r--r--res/fmod/.user/Metadata/Event/{45d68279-4042-4001-9cc3-fe7741328d02}.user.xml49
-rw-r--r--res/fmod/.user/Metadata/Event/{e332d959-1f13-4c62-91ca-53b5a142c233}.user.xml3
-rw-r--r--res/fmod/.user/Metadata/Event/{edb92230-b495-405d-96ce-a8d7283112ef}.user.xml3
-rw-r--r--res/fmod/.user/Metadata/Workspace.user.xml4
-rw-r--r--res/fmod/Assets/level3.wavbin0 -> 31753724 bytes
-rw-r--r--res/fmod/Assets/level4.wavbin0 -> 31753724 bytes
-rw-r--r--res/fmod/Metadata/AudioFile/{598d696a-a866-4860-8a80-85745ab8b7ef}.xml23
-rw-r--r--res/fmod/Metadata/AudioFile/{b81d31bd-fdcd-4402-a741-3947adc1b7dc}.xml23
-rw-r--r--res/fmod/Metadata/Event/{45d68279-4042-4001-9cc3-fe7741328d02}.xml286
-rw-r--r--res/fmod/Metadata/Event/{b2b95b3f-95bc-4633-814f-61ea539b893d}.xml2
-rw-r--r--res/fmod/Metadata/Event/{e332d959-1f13-4c62-91ca-53b5a142c233}.xml3
-rw-r--r--res/fmod/Metadata/ParameterPreset/{4bacb865-6588-42b7-9c72-e3ace10a31ef}.xml22
-rw-r--r--src/game.h11
-rw-r--r--src/main.cpp16
-rw-r--r--src/timer.h32
20 files changed, 468 insertions, 9 deletions
diff --git a/res/fmod/.cache/fsbcache/Desktop/3019A628.fobj b/res/fmod/.cache/fsbcache/Desktop/3019A628.fobj new file mode 100644 index 0000000..d7c5f5b --- /dev/null +++ b/res/fmod/.cache/fsbcache/Desktop/3019A628.fobj
Binary files differ
diff --git a/res/fmod/.cache/fsbcache/Desktop/C8D72C41.fobj b/res/fmod/.cache/fsbcache/Desktop/C8D72C41.fobj new file mode 100644 index 0000000..a5764cd --- /dev/null +++ b/res/fmod/.cache/fsbcache/Desktop/C8D72C41.fobj
Binary files differ
diff --git a/res/fmod/.cache/{598d696a-a866-4860-8a80-85745ab8b7ef}.pdc b/res/fmod/.cache/{598d696a-a866-4860-8a80-85745ab8b7ef}.pdc new file mode 100644 index 0000000..587c693 --- /dev/null +++ b/res/fmod/.cache/{598d696a-a866-4860-8a80-85745ab8b7ef}.pdc
Binary files differ
diff --git a/res/fmod/.cache/{b81d31bd-fdcd-4402-a741-3947adc1b7dc}.pdc b/res/fmod/.cache/{b81d31bd-fdcd-4402-a741-3947adc1b7dc}.pdc new file mode 100644 index 0000000..f63429f --- /dev/null +++ b/res/fmod/.cache/{b81d31bd-fdcd-4402-a741-3947adc1b7dc}.pdc
Binary files differ
diff --git a/res/fmod/.cache/{e4ee2376-d790-4e2c-8a64-9c08953d0f04}.pdc b/res/fmod/.cache/{e4ee2376-d790-4e2c-8a64-9c08953d0f04}.pdc index fceba51..7db9f39 100644 --- a/res/fmod/.cache/{e4ee2376-d790-4e2c-8a64-9c08953d0f04}.pdc +++ b/res/fmod/.cache/{e4ee2376-d790-4e2c-8a64-9c08953d0f04}.pdc
Binary files differ
diff --git a/res/fmod/.user/Metadata/Event/{45d68279-4042-4001-9cc3-fe7741328d02}.user.xml b/res/fmod/.user/Metadata/Event/{45d68279-4042-4001-9cc3-fe7741328d02}.user.xml new file mode 100644 index 0000000..eb068de --- /dev/null +++ b/res/fmod/.user/Metadata/Event/{45d68279-4042-4001-9cc3-fe7741328d02}.user.xml
@@ -0,0 +1,49 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<objects serializationModel="Studio.01.10.00">
3 <object class="Event" id="{45d68279-4042-4001-9cc3-fe7741328d02}">
4 <relationship name="uiLastParameterSelection">
5 <destination>{c99172d0-fd62-4927-a5bf-7a212358b77a}</destination>
6 </relationship>
7 </object>
8 <object class="MasterTrack" id="{364d6d0e-10ca-43eb-8ddc-1feaef1f0b1e}"/>
9 <object class="MixerInput" id="{dc10ec51-31eb-4b49-97a3-0d3e32ccdc4e}"/>
10 <object class="EventAutomatableProperties" id="{70b0f6cf-fa54-43d9-823b-cffb2baa0a07}"/>
11 <object class="MarkerTrack" id="{07e04557-2cf3-4129-81e4-b053182f1e64}"/>
12 <object class="GroupTrack" id="{55125026-1cc6-4dfd-82ad-1484ecd7227b}"/>
13 <object class="GroupTrack" id="{24b7ea8a-515c-4577-9061-3eced06c8a66}"/>
14 <object class="Timeline" id="{c99172d0-fd62-4927-a5bf-7a212358b77a}">
15 <property name="uiLastRulerScaleRatio">
16 <value>0.068265670980603113</value>
17 </property>
18 </object>
19 <object class="ParameterProxy" id="{584c4412-6e00-4a8f-8ffd-9e1e86db46e7}">
20 <property name="uiLastRulerScaleRatio">
21 <value>0.00053792361484669173</value>
22 </property>
23 </object>
24 <object class="EventMixerMaster" id="{11988232-27c1-46ce-a702-72f0ebca0568}">
25 <relationship name="input">
26 <destination>{50ed937c-e980-445f-9825-0f1a34208655}</destination>
27 <destination>{46fce461-1c11-49c1-93c1-3ebeb917fb68}</destination>
28 </relationship>
29 </object>
30 <object class="MixerBusEffectChain" id="{75c692d0-2466-4067-99dd-770141a9c101}"/>
31 <object class="MixerBusPanner" id="{49fd5113-41cd-450c-947f-43bcc164aba4}"/>
32 <object class="AutomationTrack" id="{d2659ede-f7fd-415b-9f82-c7ebeffce7f1}"/>
33 <object class="SingleSound" id="{5f0554d2-ba88-4c23-9723-a816bf4d8947}"/>
34 <object class="EventMixerGroup" id="{50ed937c-e980-445f-9825-0f1a34208655}"/>
35 <object class="AutomationTrack" id="{c4addb73-a8c2-4076-a4b4-fee6a447e83c}"/>
36 <object class="SingleSound" id="{2e1aae44-3e34-4f3c-b7ea-219fc2f610cb}"/>
37 <object class="EventMixerGroup" id="{46fce461-1c11-49c1-93c1-3ebeb917fb68}"/>
38 <object class="LoopRegion" id="{04eb3e5e-90d1-4bd6-8ab8-19cee8511d55}"/>
39 <object class="MixerBusEffectChain" id="{f14bc47b-e50f-4aee-9792-59f5919a7848}"/>
40 <object class="MixerBusPanner" id="{fd195a95-1360-427b-955e-4582768889b4}"/>
41 <object class="MixerBusFader" id="{78e09892-0e07-4c72-98ee-132122892837}"/>
42 <object class="MixerBusEffectChain" id="{e47a2e09-d7e6-4780-a397-dfd5c543c401}"/>
43 <object class="MixerBusPanner" id="{89f17956-3af7-416e-96c3-e729a44529e0}"/>
44 <object class="MixerBusEffectChain" id="{60823b6b-68ee-40df-a288-e95fe1c389b1}"/>
45 <object class="MixerBusPanner" id="{4a31b89f-42a4-4c3e-a5b9-7fb4c9830206}"/>
46 <object class="MixerBusFader" id="{467c1d30-2bc6-4dbc-a22c-c5a90e4f0efd}"/>
47 <object class="MixerBusFader" id="{858df639-4f88-4e19-b097-a7c2ab24f34d}"/>
48 <object class="MixerBusFader" id="{a8356f3f-e4ad-420f-a4f8-df891fb54211}"/>
49</objects>
diff --git a/res/fmod/.user/Metadata/Event/{e332d959-1f13-4c62-91ca-53b5a142c233}.user.xml b/res/fmod/.user/Metadata/Event/{e332d959-1f13-4c62-91ca-53b5a142c233}.user.xml index 5133b63..122b1b5 100644 --- a/res/fmod/.user/Metadata/Event/{e332d959-1f13-4c62-91ca-53b5a142c233}.user.xml +++ b/res/fmod/.user/Metadata/Event/{e332d959-1f13-4c62-91ca-53b5a142c233}.user.xml
@@ -1,9 +1,6 @@
1<?xml version="1.0" encoding="UTF-8"?> 1<?xml version="1.0" encoding="UTF-8"?>
2<objects serializationModel="Studio.01.10.00"> 2<objects serializationModel="Studio.01.10.00">
3 <object class="Event" id="{e332d959-1f13-4c62-91ca-53b5a142c233}"> 3 <object class="Event" id="{e332d959-1f13-4c62-91ca-53b5a142c233}">
4 <relationship name="selectables">
5 <destination>{aca51545-9374-4735-a7ab-56bd7f41d5af}</destination>
6 </relationship>
7 <relationship name="uiLastParameterSelection"> 4 <relationship name="uiLastParameterSelection">
8 <destination>{e4b252fb-cdeb-45e4-9b46-af6905e2f962}</destination> 5 <destination>{e4b252fb-cdeb-45e4-9b46-af6905e2f962}</destination>
9 </relationship> 6 </relationship>
diff --git a/res/fmod/.user/Metadata/Event/{edb92230-b495-405d-96ce-a8d7283112ef}.user.xml b/res/fmod/.user/Metadata/Event/{edb92230-b495-405d-96ce-a8d7283112ef}.user.xml index d341df8..34ec01b 100644 --- a/res/fmod/.user/Metadata/Event/{edb92230-b495-405d-96ce-a8d7283112ef}.user.xml +++ b/res/fmod/.user/Metadata/Event/{edb92230-b495-405d-96ce-a8d7283112ef}.user.xml
@@ -1,9 +1,6 @@
1<?xml version="1.0" encoding="UTF-8"?> 1<?xml version="1.0" encoding="UTF-8"?>
2<objects serializationModel="Studio.01.10.00"> 2<objects serializationModel="Studio.01.10.00">
3 <object class="Event" id="{edb92230-b495-405d-96ce-a8d7283112ef}"> 3 <object class="Event" id="{edb92230-b495-405d-96ce-a8d7283112ef}">
4 <relationship name="selectables">
5 <destination>{342405c4-d0d2-478c-8d02-f89f916bfd68}</destination>
6 </relationship>
7 <relationship name="uiLastParameterSelection"> 4 <relationship name="uiLastParameterSelection">
8 <destination>{ddaaf6dd-11ac-4ac7-b861-a83988d8dac9}</destination> 5 <destination>{ddaaf6dd-11ac-4ac7-b861-a83988d8dac9}</destination>
9 </relationship> 6 </relationship>
diff --git a/res/fmod/.user/Metadata/Workspace.user.xml b/res/fmod/.user/Metadata/Workspace.user.xml index 0a7da77..fd50812 100644 --- a/res/fmod/.user/Metadata/Workspace.user.xml +++ b/res/fmod/.user/Metadata/Workspace.user.xml
@@ -4,6 +4,9 @@
4 <relationship name="projectSettings"> 4 <relationship name="projectSettings">
5 <destination>{c76f5b33-a2b7-4c49-a955-93b595d4abe7}</destination> 5 <destination>{c76f5b33-a2b7-4c49-a955-93b595d4abe7}</destination>
6 </relationship> 6 </relationship>
7 <relationship name="changelist">
8 <destination>{3133d1ab-1d28-4a2b-a6f3-7c47e550eb70}</destination>
9 </relationship>
7 <relationship name="profilerSessionFolder"> 10 <relationship name="profilerSessionFolder">
8 <destination>{990c0635-d9d1-4f92-8a62-1274cb83b5d3}</destination> 11 <destination>{990c0635-d9d1-4f92-8a62-1274cb83b5d3}</destination>
9 </relationship> 12 </relationship>
@@ -13,4 +16,5 @@
13 <destination>{240c4f07-7af4-492b-98c5-0b43851e8b4f}</destination> 16 <destination>{240c4f07-7af4-492b-98c5-0b43851e8b4f}</destination>
14 </relationship> 17 </relationship>
15 </object> 18 </object>
19 <object class="WorkspaceChangelist" id="{3133d1ab-1d28-4a2b-a6f3-7c47e550eb70}"/>
16</objects> 20</objects>
diff --git a/res/fmod/Assets/level3.wav b/res/fmod/Assets/level3.wav new file mode 100644 index 0000000..6584fd9 --- /dev/null +++ b/res/fmod/Assets/level3.wav
Binary files differ
diff --git a/res/fmod/Assets/level4.wav b/res/fmod/Assets/level4.wav new file mode 100644 index 0000000..1677c5a --- /dev/null +++ b/res/fmod/Assets/level4.wav
Binary files differ
diff --git a/res/fmod/Metadata/AudioFile/{598d696a-a866-4860-8a80-85745ab8b7ef}.xml b/res/fmod/Metadata/AudioFile/{598d696a-a866-4860-8a80-85745ab8b7ef}.xml new file mode 100644 index 0000000..e714abf --- /dev/null +++ b/res/fmod/Metadata/AudioFile/{598d696a-a866-4860-8a80-85745ab8b7ef}.xml
@@ -0,0 +1,23 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<objects serializationModel="Studio.01.10.00">
3 <object class="AudioFile" id="{598d696a-a866-4860-8a80-85745ab8b7ef}">
4 <property name="assetPath">
5 <value>level3.wav</value>
6 </property>
7 <property name="isStreaming">
8 <value>true</value>
9 </property>
10 <property name="frequencyInKHz">
11 <value>44.0999985</value>
12 </property>
13 <property name="channelCount">
14 <value>2</value>
15 </property>
16 <property name="length">
17 <value>120</value>
18 </property>
19 <relationship name="masterAssetFolder">
20 <destination>{4c4e21c6-cc51-4a2c-b05e-fb67da4f7ed1}</destination>
21 </relationship>
22 </object>
23</objects>
diff --git a/res/fmod/Metadata/AudioFile/{b81d31bd-fdcd-4402-a741-3947adc1b7dc}.xml b/res/fmod/Metadata/AudioFile/{b81d31bd-fdcd-4402-a741-3947adc1b7dc}.xml new file mode 100644 index 0000000..c47d043 --- /dev/null +++ b/res/fmod/Metadata/AudioFile/{b81d31bd-fdcd-4402-a741-3947adc1b7dc}.xml
@@ -0,0 +1,23 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<objects serializationModel="Studio.01.10.00">
3 <object class="AudioFile" id="{b81d31bd-fdcd-4402-a741-3947adc1b7dc}">
4 <property name="assetPath">
5 <value>level4.wav</value>
6 </property>
7 <property name="isStreaming">
8 <value>true</value>
9 </property>
10 <property name="frequencyInKHz">
11 <value>44.0999985</value>
12 </property>
13 <property name="channelCount">
14 <value>2</value>
15 </property>
16 <property name="length">
17 <value>120</value>
18 </property>
19 <relationship name="masterAssetFolder">
20 <destination>{4c4e21c6-cc51-4a2c-b05e-fb67da4f7ed1}</destination>
21 </relationship>
22 </object>
23</objects>
diff --git a/res/fmod/Metadata/Event/{45d68279-4042-4001-9cc3-fe7741328d02}.xml b/res/fmod/Metadata/Event/{45d68279-4042-4001-9cc3-fe7741328d02}.xml new file mode 100644 index 0000000..f1fb334 --- /dev/null +++ b/res/fmod/Metadata/Event/{45d68279-4042-4001-9cc3-fe7741328d02}.xml
@@ -0,0 +1,286 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<objects serializationModel="Studio.01.10.00">
3 <object class="Event" id="{45d68279-4042-4001-9cc3-fe7741328d02}">
4 <property name="name">
5 <value>the_world</value>
6 </property>
7 <property name="outputFormat">
8 <value>1</value>
9 </property>
10 <relationship name="folder">
11 <destination>{b10a4c1b-72f0-4676-bbef-b450aaa46cb6}</destination>
12 </relationship>
13 <relationship name="mixer">
14 <destination>{225af6d2-0ec3-42cd-8708-435d59e13db9}</destination>
15 </relationship>
16 <relationship name="masterTrack">
17 <destination>{364d6d0e-10ca-43eb-8ddc-1feaef1f0b1e}</destination>
18 </relationship>
19 <relationship name="mixerInput">
20 <destination>{dc10ec51-31eb-4b49-97a3-0d3e32ccdc4e}</destination>
21 </relationship>
22 <relationship name="automatableProperties">
23 <destination>{70b0f6cf-fa54-43d9-823b-cffb2baa0a07}</destination>
24 </relationship>
25 <relationship name="markerTracks">
26 <destination>{07e04557-2cf3-4129-81e4-b053182f1e64}</destination>
27 </relationship>
28 <relationship name="groupTracks">
29 <destination>{55125026-1cc6-4dfd-82ad-1484ecd7227b}</destination>
30 <destination>{24b7ea8a-515c-4577-9061-3eced06c8a66}</destination>
31 </relationship>
32 <relationship name="timeline">
33 <destination>{c99172d0-fd62-4927-a5bf-7a212358b77a}</destination>
34 </relationship>
35 <relationship name="parameters">
36 <destination>{584c4412-6e00-4a8f-8ffd-9e1e86db46e7}</destination>
37 </relationship>
38 <relationship name="banks">
39 <destination>{a23d2b1c-914e-48d4-8df9-80f6edad6c28}</destination>
40 </relationship>
41 </object>
42 <object class="EventMixer" id="{225af6d2-0ec3-42cd-8708-435d59e13db9}">
43 <relationship name="masterBus">
44 <destination>{11988232-27c1-46ce-a702-72f0ebca0568}</destination>
45 </relationship>
46 </object>
47 <object class="MasterTrack" id="{364d6d0e-10ca-43eb-8ddc-1feaef1f0b1e}">
48 <relationship name="mixerGroup">
49 <destination>{11988232-27c1-46ce-a702-72f0ebca0568}</destination>
50 </relationship>
51 </object>
52 <object class="MixerInput" id="{dc10ec51-31eb-4b49-97a3-0d3e32ccdc4e}">
53 <relationship name="effectChain">
54 <destination>{75c692d0-2466-4067-99dd-770141a9c101}</destination>
55 </relationship>
56 <relationship name="panner">
57 <destination>{49fd5113-41cd-450c-947f-43bcc164aba4}</destination>
58 </relationship>
59 <relationship name="output">
60 <destination>{a028aeaa-4166-48ea-881f-bb967c81e6f1}</destination>
61 </relationship>
62 </object>
63 <object class="EventAutomatableProperties" id="{70b0f6cf-fa54-43d9-823b-cffb2baa0a07}"/>
64 <object class="MarkerTrack" id="{07e04557-2cf3-4129-81e4-b053182f1e64}"/>
65 <object class="GroupTrack" id="{55125026-1cc6-4dfd-82ad-1484ecd7227b}">
66 <relationship name="automationTracks">
67 <destination>{d2659ede-f7fd-415b-9f82-c7ebeffce7f1}</destination>
68 </relationship>
69 <relationship name="modules">
70 <destination>{5f0554d2-ba88-4c23-9723-a816bf4d8947}</destination>
71 </relationship>
72 <relationship name="mixerGroup">
73 <destination>{50ed937c-e980-445f-9825-0f1a34208655}</destination>
74 </relationship>
75 </object>
76 <object class="GroupTrack" id="{24b7ea8a-515c-4577-9061-3eced06c8a66}">
77 <relationship name="automationTracks">
78 <destination>{c4addb73-a8c2-4076-a4b4-fee6a447e83c}</destination>
79 </relationship>
80 <relationship name="modules">
81 <destination>{2e1aae44-3e34-4f3c-b7ea-219fc2f610cb}</destination>
82 </relationship>
83 <relationship name="mixerGroup">
84 <destination>{46fce461-1c11-49c1-93c1-3ebeb917fb68}</destination>
85 </relationship>
86 </object>
87 <object class="Timeline" id="{c99172d0-fd62-4927-a5bf-7a212358b77a}">
88 <relationship name="modules">
89 <destination>{5f0554d2-ba88-4c23-9723-a816bf4d8947}</destination>
90 <destination>{2e1aae44-3e34-4f3c-b7ea-219fc2f610cb}</destination>
91 </relationship>
92 <relationship name="markers">
93 <destination>{04eb3e5e-90d1-4bd6-8ab8-19cee8511d55}</destination>
94 </relationship>
95 </object>
96 <object class="ParameterProxy" id="{584c4412-6e00-4a8f-8ffd-9e1e86db46e7}">
97 <relationship name="preset">
98 <destination>{42d91edf-b8cf-42e1-b8e6-2303925a5f74}</destination>
99 </relationship>
100 </object>
101 <object class="EventMixerMaster" id="{11988232-27c1-46ce-a702-72f0ebca0568}">
102 <relationship name="effectChain">
103 <destination>{f14bc47b-e50f-4aee-9792-59f5919a7848}</destination>
104 </relationship>
105 <relationship name="panner">
106 <destination>{fd195a95-1360-427b-955e-4582768889b4}</destination>
107 </relationship>
108 <relationship name="mixer">
109 <destination>{225af6d2-0ec3-42cd-8708-435d59e13db9}</destination>
110 </relationship>
111 </object>
112 <object class="MixerBusEffectChain" id="{75c692d0-2466-4067-99dd-770141a9c101}">
113 <relationship name="effects">
114 <destination>{78e09892-0e07-4c72-98ee-132122892837}</destination>
115 </relationship>
116 </object>
117 <object class="MixerBusPanner" id="{49fd5113-41cd-450c-947f-43bcc164aba4}"/>
118 <object class="AutomationTrack" id="{d2659ede-f7fd-415b-9f82-c7ebeffce7f1}">
119 <relationship name="automator">
120 <destination>{5c13a4cc-164c-49cb-a1db-a6e20e822ccf}</destination>
121 </relationship>
122 </object>
123 <object class="SingleSound" id="{5f0554d2-ba88-4c23-9723-a816bf4d8947}">
124 <property name="length">
125 <value>120</value>
126 </property>
127 <relationship name="audioFile">
128 <destination>{598d696a-a866-4860-8a80-85745ab8b7ef}</destination>
129 </relationship>
130 </object>
131 <object class="EventMixerGroup" id="{50ed937c-e980-445f-9825-0f1a34208655}">
132 <property name="name">
133 <value>Audio 1</value>
134 </property>
135 <relationship name="automators">
136 <destination>{5c13a4cc-164c-49cb-a1db-a6e20e822ccf}</destination>
137 </relationship>
138 <relationship name="effectChain">
139 <destination>{e47a2e09-d7e6-4780-a397-dfd5c543c401}</destination>
140 </relationship>
141 <relationship name="panner">
142 <destination>{89f17956-3af7-416e-96c3-e729a44529e0}</destination>
143 </relationship>
144 <relationship name="output">
145 <destination>{11988232-27c1-46ce-a702-72f0ebca0568}</destination>
146 </relationship>
147 </object>
148 <object class="AutomationTrack" id="{c4addb73-a8c2-4076-a4b4-fee6a447e83c}">
149 <relationship name="automator">
150 <destination>{bf1c5ce7-89a6-4de7-a300-ece1e53f376d}</destination>
151 </relationship>
152 </object>
153 <object class="SingleSound" id="{2e1aae44-3e34-4f3c-b7ea-219fc2f610cb}">
154 <property name="length">
155 <value>120</value>
156 </property>
157 <relationship name="audioFile">
158 <destination>{b81d31bd-fdcd-4402-a741-3947adc1b7dc}</destination>
159 </relationship>
160 </object>
161 <object class="EventMixerGroup" id="{46fce461-1c11-49c1-93c1-3ebeb917fb68}">
162 <property name="name">
163 <value>Audio 2</value>
164 </property>
165 <relationship name="automators">
166 <destination>{bf1c5ce7-89a6-4de7-a300-ece1e53f376d}</destination>
167 </relationship>
168 <relationship name="effectChain">
169 <destination>{60823b6b-68ee-40df-a288-e95fe1c389b1}</destination>
170 </relationship>
171 <relationship name="panner">
172 <destination>{4a31b89f-42a4-4c3e-a5b9-7fb4c9830206}</destination>
173 </relationship>
174 <relationship name="output">
175 <destination>{11988232-27c1-46ce-a702-72f0ebca0568}</destination>
176 </relationship>
177 </object>
178 <object class="LoopRegion" id="{04eb3e5e-90d1-4bd6-8ab8-19cee8511d55}">
179 <property name="position">
180 <value>6</value>
181 </property>
182 <property name="length">
183 <value>96</value>
184 </property>
185 <relationship name="timeline">
186 <destination>{c99172d0-fd62-4927-a5bf-7a212358b77a}</destination>
187 </relationship>
188 <relationship name="markerTrack">
189 <destination>{07e04557-2cf3-4129-81e4-b053182f1e64}</destination>
190 </relationship>
191 </object>
192 <object class="MixerBusEffectChain" id="{f14bc47b-e50f-4aee-9792-59f5919a7848}">
193 <relationship name="effects">
194 <destination>{467c1d30-2bc6-4dbc-a22c-c5a90e4f0efd}</destination>
195 </relationship>
196 </object>
197 <object class="MixerBusPanner" id="{fd195a95-1360-427b-955e-4582768889b4}"/>
198 <object class="MixerBusFader" id="{78e09892-0e07-4c72-98ee-132122892837}"/>
199 <object class="Automator" id="{5c13a4cc-164c-49cb-a1db-a6e20e822ccf}">
200 <property name="nameOfPropertyBeingAutomated">
201 <value>volume</value>
202 </property>
203 <relationship name="automationCurves">
204 <destination>{371830a9-2ede-4b1a-8669-54a649f3b7b5}</destination>
205 </relationship>
206 </object>
207 <object class="MixerBusEffectChain" id="{e47a2e09-d7e6-4780-a397-dfd5c543c401}">
208 <relationship name="effects">
209 <destination>{858df639-4f88-4e19-b097-a7c2ab24f34d}</destination>
210 </relationship>
211 </object>
212 <object class="MixerBusPanner" id="{89f17956-3af7-416e-96c3-e729a44529e0}"/>
213 <object class="Automator" id="{bf1c5ce7-89a6-4de7-a300-ece1e53f376d}">
214 <property name="nameOfPropertyBeingAutomated">
215 <value>volume</value>
216 </property>
217 <relationship name="automationCurves">
218 <destination>{e38ff8e4-0ab4-408f-9a32-63d29f05a350}</destination>
219 </relationship>
220 </object>
221 <object class="MixerBusEffectChain" id="{60823b6b-68ee-40df-a288-e95fe1c389b1}">
222 <relationship name="effects">
223 <destination>{a8356f3f-e4ad-420f-a4f8-df891fb54211}</destination>
224 </relationship>
225 </object>
226 <object class="MixerBusPanner" id="{4a31b89f-42a4-4c3e-a5b9-7fb4c9830206}"/>
227 <object class="MixerBusFader" id="{467c1d30-2bc6-4dbc-a22c-c5a90e4f0efd}"/>
228 <object class="AutomationCurve" id="{371830a9-2ede-4b1a-8669-54a649f3b7b5}">
229 <relationship name="parameter">
230 <destination>{42d91edf-b8cf-42e1-b8e6-2303925a5f74}</destination>
231 </relationship>
232 <relationship name="automationPoints">
233 <destination>{b0e93299-7935-428c-8064-e85590b5b6a1}</destination>
234 <destination>{cd17390c-6f19-4bb2-a123-406d60c7f1f6}</destination>
235 </relationship>
236 </object>
237 <object class="MixerBusFader" id="{858df639-4f88-4e19-b097-a7c2ab24f34d}"/>
238 <object class="AutomationCurve" id="{e38ff8e4-0ab4-408f-9a32-63d29f05a350}">
239 <relationship name="parameter">
240 <destination>{42d91edf-b8cf-42e1-b8e6-2303925a5f74}</destination>
241 </relationship>
242 <relationship name="automationPoints">
243 <destination>{b59b1d93-f7f2-4c75-8721-285eeb22e2c3}</destination>
244 <destination>{cb9884cc-19f9-47bd-8e88-e15b7f4d97e5}</destination>
245 </relationship>
246 </object>
247 <object class="MixerBusFader" id="{a8356f3f-e4ad-420f-a4f8-df891fb54211}"/>
248 <object class="AutomationPoint" id="{b0e93299-7935-428c-8064-e85590b5b6a1}">
249 <property name="position">
250 <value>0</value>
251 </property>
252 <property name="value">
253 <value>0</value>
254 </property>
255 <property name="curveShape">
256 <value>1</value>
257 </property>
258 </object>
259 <object class="AutomationPoint" id="{cd17390c-6f19-4bb2-a123-406d60c7f1f6}">
260 <property name="position">
261 <value>1</value>
262 </property>
263 <property name="value">
264 <value>-80</value>
265 </property>
266 </object>
267 <object class="AutomationPoint" id="{b59b1d93-f7f2-4c75-8721-285eeb22e2c3}">
268 <property name="position">
269 <value>0</value>
270 </property>
271 <property name="value">
272 <value>-80</value>
273 </property>
274 <property name="curveShape">
275 <value>-1</value>
276 </property>
277 </object>
278 <object class="AutomationPoint" id="{cb9884cc-19f9-47bd-8e88-e15b7f4d97e5}">
279 <property name="position">
280 <value>1</value>
281 </property>
282 <property name="value">
283 <value>0</value>
284 </property>
285 </object>
286</objects>
diff --git a/res/fmod/Metadata/Event/{b2b95b3f-95bc-4633-814f-61ea539b893d}.xml b/res/fmod/Metadata/Event/{b2b95b3f-95bc-4633-814f-61ea539b893d}.xml index 9af04e2..d447f23 100644 --- a/res/fmod/Metadata/Event/{b2b95b3f-95bc-4633-814f-61ea539b893d}.xml +++ b/res/fmod/Metadata/Event/{b2b95b3f-95bc-4633-814f-61ea539b893d}.xml
@@ -127,7 +127,7 @@
127 <object class="MixerBusFader" id="{13d370b9-5342-4ac6-91f5-7e26dd487120}"/> 127 <object class="MixerBusFader" id="{13d370b9-5342-4ac6-91f5-7e26dd487120}"/>
128 <object class="SpatialiserEffect" id="{966befce-7768-47cf-a593-af7c2a6e1c7b}"> 128 <object class="SpatialiserEffect" id="{966befce-7768-47cf-a593-af7c2a6e1c7b}">
129 <property name="maximumDistance"> 129 <property name="maximumDistance">
130 <value>500</value> 130 <value>75</value>
131 </property> 131 </property>
132 </object> 132 </object>
133 <object class="MixerBusFader" id="{f93828b2-9878-4e70-a10b-79de9f75b57c}"/> 133 <object class="MixerBusFader" id="{f93828b2-9878-4e70-a10b-79de9f75b57c}"/>
diff --git a/res/fmod/Metadata/Event/{e332d959-1f13-4c62-91ca-53b5a142c233}.xml b/res/fmod/Metadata/Event/{e332d959-1f13-4c62-91ca-53b5a142c233}.xml index c1edbd9..c035bb2 100644 --- a/res/fmod/Metadata/Event/{e332d959-1f13-4c62-91ca-53b5a142c233}.xml +++ b/res/fmod/Metadata/Event/{e332d959-1f13-4c62-91ca-53b5a142c233}.xml
@@ -97,6 +97,9 @@
97 </relationship> 97 </relationship>
98 </object> 98 </object>
99 <object class="EventMixerGroup" id="{21bae33a-352a-45ad-9322-aa298bafb005}"> 99 <object class="EventMixerGroup" id="{21bae33a-352a-45ad-9322-aa298bafb005}">
100 <property name="volume">
101 <value>-14.5</value>
102 </property>
100 <property name="name"> 103 <property name="name">
101 <value>Audio 1</value> 104 <value>Audio 1</value>
102 </property> 105 </property>
diff --git a/res/fmod/Metadata/ParameterPreset/{4bacb865-6588-42b7-9c72-e3ace10a31ef}.xml b/res/fmod/Metadata/ParameterPreset/{4bacb865-6588-42b7-9c72-e3ace10a31ef}.xml new file mode 100644 index 0000000..acc3dc7 --- /dev/null +++ b/res/fmod/Metadata/ParameterPreset/{4bacb865-6588-42b7-9c72-e3ace10a31ef}.xml
@@ -0,0 +1,22 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<objects serializationModel="Studio.01.10.00">
3 <object class="ParameterPreset" id="{4bacb865-6588-42b7-9c72-e3ace10a31ef}">
4 <property name="name">
5 <value>level_full</value>
6 </property>
7 <relationship name="folder">
8 <destination>{14f9ed74-677a-4f62-a034-1edaa3ce3f77}</destination>
9 </relationship>
10 <relationship name="parameter">
11 <destination>{42d91edf-b8cf-42e1-b8e6-2303925a5f74}</destination>
12 </relationship>
13 </object>
14 <object class="GameParameter" id="{42d91edf-b8cf-42e1-b8e6-2303925a5f74}">
15 <property name="initialValue">
16 <value>0</value>
17 </property>
18 <property name="seekSpeed">
19 <value>0.25</value>
20 </property>
21 </object>
22</objects>
diff --git a/src/game.h b/src/game.h index f0385ee..c489afc 100644 --- a/src/game.h +++ b/src/game.h
@@ -7,6 +7,7 @@
7#include <list> 7#include <list>
8#include "map.h" 8#include "map.h"
9#include "muxer.h" 9#include "muxer.h"
10#include "timer.h"
10 11
11const int GAME_WIDTH = 640*2; 12const int GAME_WIDTH = 640*2;
12const int GAME_HEIGHT = 480*2; 13const int GAME_HEIGHT = 480*2;
@@ -43,6 +44,14 @@ struct Input {
43 bool right = false; 44 bool right = false;
44 bool up = false; 45 bool up = false;
45 bool down = false; 46 bool down = false;
47
48 bool operator==(const Input& rhs) const {
49 return std::tie(left, right, up, down) == std::tie(rhs.left, rhs.right, rhs.up, rhs.down);
50 }
51
52 bool operator!=(const Input& rhs) const {
53 return !(*this == rhs);
54 }
46}; 55};
47 56
48using coord = std::tuple<int, int>; 57using coord = std::tuple<int, int>;
@@ -110,6 +119,8 @@ public:
110 119
111 bool firstInput = false; 120 bool firstInput = false;
112 Input lastInput; 121 Input lastInput;
122 bool alreadyBumped = false;
123 Timer bumpCooldown = {500};
113 124
114}; 125};
115 126
diff --git a/src/main.cpp b/src/main.cpp index 25da94f..cd1a8c2 100644 --- a/src/main.cpp +++ b/src/main.cpp
@@ -106,7 +106,11 @@ bool movePlayer(Game& game, int x, int y)
106 106
107 return true; 107 return true;
108 } else { 108 } else {
109 //game.muxer.playSoundAtPosition("bump", game.player_x, game.player_y); 109 if (!game.alreadyBumped) {
110 game.muxer.playSoundAtPosition("bump", x, y);
111 game.alreadyBumped = true;
112 game.bumpCooldown.reset();
113 }
110 114
111 return false; 115 return false;
112 } 116 }
@@ -409,7 +413,7 @@ void setZoom(Game& game, size_t zoom)
409 { 413 {
410 game.curBoundY = game.map.getBottom() - zoom * ZOOM_Y_FACTOR; 414 game.curBoundY = game.map.getBottom() - zoom * ZOOM_Y_FACTOR;
411 } 415 }
412 416
413 int zoomLevel = getZoomLevel(game); 417 int zoomLevel = getZoomLevel(game);
414 if (zoomLevel == 0) { 418 if (zoomLevel == 0) {
415 game.muxer.setMusicLevel(0); 419 game.muxer.setMusicLevel(0);
@@ -538,6 +542,7 @@ int main(int, char**)
538 game.numLamps++; 542 game.numLamps++;
539 game.dirtyLighting = true; 543 game.dirtyLighting = true;
540 kickUpDust(game, game.player_x, game.player_y, 0); 544 kickUpDust(game, game.player_x, game.player_y, 0);
545 game.muxer.playSoundAtPosition("drop", game.player_x, game.player_y);
541 546
542 if (game.firstInput) 547 if (game.firstInput)
543 { 548 {
@@ -576,6 +581,8 @@ int main(int, char**)
576 std::get<0>(moveTo), 581 std::get<0>(moveTo),
577 std::get<1>(moveTo)); 582 std::get<1>(moveTo));
578 } 583 }
584
585 //game.muxer.playSoundAtPosition("dash", game.player_x, game.player_y);
579 } 586 }
580 } 587 }
581 } 588 }
@@ -592,6 +599,11 @@ int main(int, char**)
592 keystate.up = state[SDL_SCANCODE_UP]; 599 keystate.up = state[SDL_SCANCODE_UP];
593 keystate.down = state[SDL_SCANCODE_DOWN]; 600 keystate.down = state[SDL_SCANCODE_DOWN];
594 601
602 game.bumpCooldown.accumulate(frameTime);
603 if (game.alreadyBumped && keystate != game.lastInput && game.bumpCooldown.step()) {
604 game.alreadyBumped = false;
605 }
606
595 if (keystate.left || keystate.right || keystate.up || keystate.down) 607 if (keystate.left || keystate.right || keystate.up || keystate.down)
596 { 608 {
597 game.firstInput = true; 609 game.firstInput = true;
diff --git a/src/timer.h b/src/timer.h new file mode 100644 index 0000000..ec34f3e --- /dev/null +++ b/src/timer.h
@@ -0,0 +1,32 @@
1#ifndef TIMER_H_45E2F1F9
2#define TIMER_H_45E2F1F9
3
4class Timer {
5public:
6
7 Timer(int dt) : dt_(dt) {}
8
9 void accumulate(int t) {
10 acc_ += t;
11 }
12
13 bool step() {
14 if (acc_ > dt_) {
15 acc_ -= dt_;
16 return true;
17 } else {
18 return false;
19 }
20 }
21
22 void reset() {
23 acc_ = 0;
24 }
25
26private:
27
28 int dt_;
29 int acc_ = 0;
30};
31
32#endif /* end of include guard: TIMER_H_45E2F1F9 */