Commit cb21390193e0f1cef6d09e1b5f02fe1ec3bc609b
1 parent
9415917c
添加一个游戏的源码和编译选项
Showing
335 changed files
with
18389 additions
and
108 deletions
Too many changes.
To preserve performance only 26 of 335 files are displayed.
ios/Runner.xcodeproj/project.pbxproj
@@ -17,6 +17,269 @@ | @@ -17,6 +17,269 @@ | ||
17 | 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; | 17 | 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; |
18 | 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; | 18 | 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; |
19 | B852C1352BCABB5E00A53FC4 /* GameMessageChannel.swift in Sources */ = {isa = PBXBuildFile; fileRef = B852C1342BCABB5E00A53FC4 /* GameMessageChannel.swift */; }; | 19 | B852C1352BCABB5E00A53FC4 /* GameMessageChannel.swift in Sources */ = {isa = PBXBuildFile; fileRef = B852C1342BCABB5E00A53FC4 /* GameMessageChannel.swift */; }; |
20 | + B891A2E12BCD1392006CB06E /* TouchInterceptingLayer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2622BCD1392006CB06E /* TouchInterceptingLayer.cpp */; }; | ||
21 | + B891A2E22BCD1392006CB06E /* LevelPickerLayer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2652BCD1392006CB06E /* LevelPickerLayer.cpp */; }; | ||
22 | + B891A2E32BCD1392006CB06E /* LevelPickerView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2672BCD1392006CB06E /* LevelPickerView.cpp */; }; | ||
23 | + B891A2E42BCD1392006CB06E /* SimpleLevelPickerView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2692BCD1392006CB06E /* SimpleLevelPickerView.cpp */; }; | ||
24 | + B891A2E52BCD1392006CB06E /* AlertView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A26C2BCD1392006CB06E /* AlertView.cpp */; }; | ||
25 | + B891A2E62BCD1392006CB06E /* AppLinksView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A26E2BCD1392006CB06E /* AppLinksView.cpp */; }; | ||
26 | + B891A2E72BCD1392006CB06E /* GameLifeIndicatorView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2702BCD1392006CB06E /* GameLifeIndicatorView.cpp */; }; | ||
27 | + B891A2E82BCD1392006CB06E /* LevelView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2722BCD1392006CB06E /* LevelView.cpp */; }; | ||
28 | + B891A2E92BCD1392006CB06E /* ParentalGateShowInterface.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2742BCD1392006CB06E /* ParentalGateShowInterface.cpp */; }; | ||
29 | + B891A2EA2BCD1392006CB06E /* ParentalGateView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2762BCD1392006CB06E /* ParentalGateView.cpp */; }; | ||
30 | + B891A2EB2BCD1392006CB06E /* SettingsLayer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2782BCD1392006CB06E /* SettingsLayer.cpp */; }; | ||
31 | + B891A2EC2BCD1392006CB06E /* TOSAcceptPopupView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A27A2BCD1392006CB06E /* TOSAcceptPopupView.cpp */; }; | ||
32 | + B891A2ED2BCD1392006CB06E /* ChangingSprite.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A27D2BCD1392006CB06E /* ChangingSprite.cpp */; }; | ||
33 | + B891A2EE2BCD1392006CB06E /* ContainerSprite.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A27F2BCD1392006CB06E /* ContainerSprite.cpp */; }; | ||
34 | + B891A2EF2BCD1392006CB06E /* PlainLabel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2812BCD1392006CB06E /* PlainLabel.cpp */; }; | ||
35 | + B891A2F02BCD1392006CB06E /* PlainNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2832BCD1392006CB06E /* PlainNode.cpp */; }; | ||
36 | + B891A2F12BCD1392006CB06E /* PlainSprite.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2852BCD1392006CB06E /* PlainSprite.cpp */; }; | ||
37 | + B891A2F22BCD1392006CB06E /* ProgressSliderNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2872BCD1392006CB06E /* ProgressSliderNode.cpp */; }; | ||
38 | + B891A2F32BCD1392006CB06E /* SimpleButton.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2892BCD1392006CB06E /* SimpleButton.cpp */; }; | ||
39 | + B891A2F42BCD1392006CB06E /* TouchableSprite.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A28B2BCD1392006CB06E /* TouchableSprite.cpp */; }; | ||
40 | + B891A2F52BCD1392006CB06E /* TwoStateButton.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A28D2BCD1392006CB06E /* TwoStateButton.cpp */; }; | ||
41 | + B891A2F62BCD1392006CB06E /* ResourcesConfig.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2912BCD1392006CB06E /* ResourcesConfig.cpp */; }; | ||
42 | + B891A2F72BCD1392006CB06E /* Strings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2932BCD1392006CB06E /* Strings.cpp */; }; | ||
43 | + B891A2F92BCD1392006CB06E /* GameConfigParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2992BCD1392006CB06E /* GameConfigParser.cpp */; }; | ||
44 | + B891A2FA2BCD1392006CB06E /* LayoutObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A29C2BCD1392006CB06E /* LayoutObject.cpp */; }; | ||
45 | + B891A2FB2BCD1392006CB06E /* LayoutParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A29E2BCD1392006CB06E /* LayoutParser.cpp */; }; | ||
46 | + B891A2FC2BCD1392006CB06E /* ActionData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2A12BCD1392006CB06E /* ActionData.cpp */; }; | ||
47 | + B891A3042BCD1392006CB06E /* JSONParseUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2B52BCD1392006CB06E /* JSONParseUtils.cpp */; }; | ||
48 | + B891A3052BCD1392006CB06E /* StaticActionParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2B82BCD1392006CB06E /* StaticActionParser.cpp */; }; | ||
49 | + B891A3062BCD1392006CB06E /* ValueStorage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2BA2BCD1392006CB06E /* ValueStorage.cpp */; }; | ||
50 | + B891A3072BCD1392006CB06E /* SubGameScene.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2BD2BCD1392006CB06E /* SubGameScene.cpp */; }; | ||
51 | + B891A3082BCD1392006CB06E /* SubGameSceneShoot.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2BF2BCD1392006CB06E /* SubGameSceneShoot.cpp */; }; | ||
52 | + B891A30A2BCD1392006CB06E /* ParentScene.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2C42BCD1392006CB06E /* ParentScene.cpp */; }; | ||
53 | + B891A30B2BCD1392006CB06E /* SceneWithUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2C62BCD1392006CB06E /* SceneWithUtils.cpp */; }; | ||
54 | + B891A30C2BCD1392006CB06E /* DrawingUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2C92BCD1392006CB06E /* DrawingUtils.cpp */; }; | ||
55 | + B891A30D2BCD1392006CB06E /* GeometryUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2CB2BCD1392006CB06E /* GeometryUtils.cpp */; }; | ||
56 | + B891A30E2BCD1392006CB06E /* MathUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2CD2BCD1392006CB06E /* MathUtils.cpp */; }; | ||
57 | + B891A30F2BCD1392006CB06E /* MiscUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2CF2BCD1392006CB06E /* MiscUtils.cpp */; }; | ||
58 | + B891A3102BCD1392006CB06E /* ResourceUtilities.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2D12BCD1392006CB06E /* ResourceUtilities.cpp */; }; | ||
59 | + B891A3112BCD1392006CB06E /* ScalingUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2D32BCD1392006CB06E /* ScalingUtils.cpp */; }; | ||
60 | + B891A3122BCD1392006CB06E /* SoundsRepo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2D52BCD1392006CB06E /* SoundsRepo.cpp */; }; | ||
61 | + B891A3132BCD1392006CB06E /* SoundUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2D72BCD1392006CB06E /* SoundUtils.cpp */; }; | ||
62 | + B891A3142BCD1392006CB06E /* StringUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B891A2D92BCD1392006CB06E /* StringUtils.cpp */; }; | ||
63 | + B891A4F92BCD2429006CB06E /* ComicSansMSBold.ttf in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3162BCD13AB006CB06E /* ComicSansMSBold.ttf */; }; | ||
64 | + B891A4FA2BCD2429006CB06E /* ComicSansMSRegular.ttf in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3172BCD13AB006CB06E /* ComicSansMSRegular.ttf */; }; | ||
65 | + B891A4FB2BCD2449006CB06E /* .gitkeep in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A40F2BCD13AB006CB06E /* .gitkeep */; }; | ||
66 | + B891A4FC2BCD2488006CB06E /* gconfig.gcf in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3192BCD13AB006CB06E /* gconfig.gcf */; }; | ||
67 | + B891A4FD2BCD24CA006CB06E /* g_no.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3392BCD13AB006CB06E /* g_no.mp3 */; }; | ||
68 | + B891A4FE2BCD24CA006CB06E /* g_oops.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A33A2BCD13AB006CB06E /* g_oops.mp3 */; }; | ||
69 | + B891A4FF2BCD24CA006CB06E /* g_uh_oh.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A33B2BCD13AB006CB06E /* g_uh_oh.mp3 */; }; | ||
70 | + B891A5002BCD24CA006CB06E /* g_well_done.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A33C2BCD13AB006CB06E /* g_well_done.mp3 */; }; | ||
71 | + B891A5012BCD24CA006CB06E /* g_whoo_hoo.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A33D2BCD13AB006CB06E /* g_whoo_hoo.mp3 */; }; | ||
72 | + B891A5022BCD24CA006CB06E /* g_yeah.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A33E2BCD13AB006CB06E /* g_yeah.mp3 */; }; | ||
73 | + B891A5032BCD24CA006CB06E /* maggie_super.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A33F2BCD13AB006CB06E /* maggie_super.mp3 */; }; | ||
74 | + B891A5042BCD24CA006CB06E /* maggie_thats_right.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3402BCD13AB006CB06E /* maggie_thats_right.mp3 */; }; | ||
75 | + B891A5052BCD24CA006CB06E /* maggie_yeah.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3412BCD13AB006CB06E /* maggie_yeah.mp3 */; }; | ||
76 | + B891A50F2BCD2524006CB06E /* all_in_trolley.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A31C2BCD13AB006CB06E /* all_in_trolley.mp3 */; }; | ||
77 | + B891A5102BCD2524006CB06E /* apple.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A31D2BCD13AB006CB06E /* apple.mp3 */; }; | ||
78 | + B891A5112BCD2524006CB06E /* banana.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A31E2BCD13AB006CB06E /* banana.mp3 */; }; | ||
79 | + B891A5122BCD2524006CB06E /* cake.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A31F2BCD13AB006CB06E /* cake.mp3 */; }; | ||
80 | + B891A5132BCD2524006CB06E /* chocolate.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3202BCD13AB006CB06E /* chocolate.mp3 */; }; | ||
81 | + B891A5142BCD2524006CB06E /* cucumber.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3212BCD13AB006CB06E /* cucumber.mp3 */; }; | ||
82 | + B891A5152BCD2524006CB06E /* donut.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3222BCD13AB006CB06E /* donut.mp3 */; }; | ||
83 | + B891A5162BCD2524006CB06E /* effect_catapult.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3232BCD13AB006CB06E /* effect_catapult.mp3 */; }; | ||
84 | + B891A5172BCD2524006CB06E /* effect_hit.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3242BCD13AB006CB06E /* effect_hit.mp3 */; }; | ||
85 | + B891A5182BCD2524006CB06E /* effect_in_trolley.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3252BCD13AB006CB06E /* effect_in_trolley.mp3 */; }; | ||
86 | + B891A5192BCD2524006CB06E /* hit_maggie.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3262BCD13AB006CB06E /* hit_maggie.mp3 */; }; | ||
87 | + B891A51A2BCD2524006CB06E /* hit_steve.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3272BCD13AB006CB06E /* hit_steve.mp3 */; }; | ||
88 | + B891A51B2BCD2524006CB06E /* icecream.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3282BCD13AB006CB06E /* icecream.mp3 */; }; | ||
89 | + B891A51C2BCD2524006CB06E /* in_trolley.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3292BCD13AB006CB06E /* in_trolley.mp3 */; }; | ||
90 | + B891A51D2BCD2524006CB06E /* not_apple.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A32A2BCD13AB006CB06E /* not_apple.mp3 */; }; | ||
91 | + B891A51E2BCD2524006CB06E /* not_banana.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A32B2BCD13AB006CB06E /* not_banana.mp3 */; }; | ||
92 | + B891A51F2BCD2524006CB06E /* not_cake.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A32C2BCD13AB006CB06E /* not_cake.mp3 */; }; | ||
93 | + B891A5202BCD2524006CB06E /* not_chocolate.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A32D2BCD13AB006CB06E /* not_chocolate.mp3 */; }; | ||
94 | + B891A5212BCD2524006CB06E /* not_cucumber.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A32E2BCD13AB006CB06E /* not_cucumber.mp3 */; }; | ||
95 | + B891A5222BCD2524006CB06E /* not_donut.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A32F2BCD13AB006CB06E /* not_donut.mp3 */; }; | ||
96 | + B891A5232BCD2524006CB06E /* not_icecream.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3302BCD13AB006CB06E /* not_icecream.mp3 */; }; | ||
97 | + B891A5242BCD2524006CB06E /* not_in_trolley.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3312BCD13AB006CB06E /* not_in_trolley.mp3 */; }; | ||
98 | + B891A5252BCD2524006CB06E /* not_tomato.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3322BCD13AB006CB06E /* not_tomato.mp3 */; }; | ||
99 | + B891A5262BCD2524006CB06E /* put_it_trolley.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3332BCD13AB006CB06E /* put_it_trolley.mp3 */; }; | ||
100 | + B891A5272BCD2524006CB06E /* shop_closed.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3342BCD13AB006CB06E /* shop_closed.mp3 */; }; | ||
101 | + B891A5282BCD2524006CB06E /* start.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3352BCD13AB006CB06E /* start.mp3 */; }; | ||
102 | + B891A5292BCD2524006CB06E /* tomato.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3362BCD13AB006CB06E /* tomato.mp3 */; }; | ||
103 | + B891A52A2BCD2524006CB06E /* wrong_3_times.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3372BCD13AB006CB06E /* wrong_3_times.mp3 */; }; | ||
104 | + B891A52B2BCD2547006CB06E /* g_pick_level.mp3 in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3432BCD13AB006CB06E /* g_pick_level.mp3 */; }; | ||
105 | + B891A52C2BCD2576006CB06E /* app_link_halloween.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3472BCD13AB006CB06E /* app_link_halloween.png */; }; | ||
106 | + B891A52D2BCD2576006CB06E /* app_link_toy.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3482BCD13AB006CB06E /* app_link_toy.png */; }; | ||
107 | + B891A52E2BCD2576006CB06E /* doll_toy_app.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3492BCD13AB006CB06E /* doll_toy_app.png */; }; | ||
108 | + B891A52F2BCD2576006CB06E /* halo_icon.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A34A2BCD13AB006CB06E /* halo_icon.png */; }; | ||
109 | + B891A5302BCD2576006CB06E /* steve_maggie.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A34B2BCD13AB006CB06E /* steve_maggie.png */; }; | ||
110 | + B891A5312BCD2576006CB06E /* witch_halloween_app.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A34C2BCD13AB006CB06E /* witch_halloween_app.png */; }; | ||
111 | + B891A5322BCD259B006CB06E /* horizontalButtonPanelBackFFPause.obl in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A35F2BCD13AB006CB06E /* horizontalButtonPanelBackFFPause.obl */; }; | ||
112 | + B891A5332BCD25B4006CB06E /* button_back.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A34E2BCD13AB006CB06E /* button_back.png */; }; | ||
113 | + B891A5342BCD25B4006CB06E /* button_go.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A34F2BCD13AB006CB06E /* button_go.png */; }; | ||
114 | + B891A5352BCD25B4006CB06E /* button_green.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3502BCD13AB006CB06E /* button_green.png */; }; | ||
115 | + B891A5362BCD25B4006CB06E /* button_grey.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3512BCD13AB006CB06E /* button_grey.png */; }; | ||
116 | + B891A5372BCD25B4006CB06E /* button_orange.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3522BCD13AB006CB06E /* button_orange.png */; }; | ||
117 | + B891A5382BCD25B4006CB06E /* button_pause.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3532BCD13AB006CB06E /* button_pause.png */; }; | ||
118 | + B891A5392BCD25B4006CB06E /* button_purple.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3542BCD13AB006CB06E /* button_purple.png */; }; | ||
119 | + B891A53A2BCD25B4006CB06E /* button_red.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3552BCD13AB006CB06E /* button_red.png */; }; | ||
120 | + B891A53B2BCD25B4006CB06E /* button_repeat.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3562BCD13AB006CB06E /* button_repeat.png */; }; | ||
121 | + B891A53C2BCD25B4006CB06E /* button_setting.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3572BCD13AB006CB06E /* button_setting.png */; }; | ||
122 | + B891A53D2BCD25B4006CB06E /* button_sound_off.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3582BCD13AB006CB06E /* button_sound_off.png */; }; | ||
123 | + B891A53E2BCD25B4006CB06E /* button_sound_on.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3592BCD13AB006CB06E /* button_sound_on.png */; }; | ||
124 | + B891A53F2BCD25B4006CB06E /* button_turquoise.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A35A2BCD13AB006CB06E /* button_turquoise.png */; }; | ||
125 | + B891A5402BCD25B4006CB06E /* button_yellow.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A35B2BCD13AB006CB06E /* button_yellow.png */; }; | ||
126 | + B891A5412BCD25B4006CB06E /* buttonff.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A35C2BCD13AB006CB06E /* buttonff.png */; }; | ||
127 | + B891A5422BCD25B4006CB06E /* dark_green.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A35D2BCD13AB006CB06E /* dark_green.png */; }; | ||
128 | + B891A5432BCD25D4006CB06E /* g_finger.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3A42BCD13AB006CB06E /* g_finger.png */; }; | ||
129 | + B891A5442BCD25D4006CB06E /* g_life_indicator_dead.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3A52BCD13AB006CB06E /* g_life_indicator_dead.png */; }; | ||
130 | + B891A5452BCD25D4006CB06E /* g_life_indicator_ok.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3A62BCD13AB006CB06E /* g_life_indicator_ok.png */; }; | ||
131 | + B891A5462BCD25D4006CB06E /* level_halo.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3A72BCD13AB006CB06E /* level_halo.png */; }; | ||
132 | + B891A5472BCD25F0006CB06E /* level_1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3612BCD13AB006CB06E /* level_1.png */; }; | ||
133 | + B891A5482BCD25F0006CB06E /* level_2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3622BCD13AB006CB06E /* level_2.png */; }; | ||
134 | + B891A5492BCD25F0006CB06E /* level_3.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3632BCD13AB006CB06E /* level_3.png */; }; | ||
135 | + B891A54A2BCD2615006CB06E /* scene_layout.scl in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A39F2BCD13AB006CB06E /* scene_layout.scl */; }; | ||
136 | + B891A5572BCD266A006CB06E /* cart_back1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A38F2BCD13AB006CB06E /* cart_back1.png */; }; | ||
137 | + B891A5582BCD266A006CB06E /* cart_back2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3902BCD13AB006CB06E /* cart_back2.png */; }; | ||
138 | + B891A5592BCD266A006CB06E /* cart_front.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3912BCD13AB006CB06E /* cart_front.png */; }; | ||
139 | + B891A55A2BCD266A006CB06E /* clock.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3922BCD13AB006CB06E /* clock.png */; }; | ||
140 | + B891A55B2BCD266A006CB06E /* food_in_cart.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3932BCD13AB006CB06E /* food_in_cart.png */; }; | ||
141 | + B891A55C2BCD266A006CB06E /* gum.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3942BCD13AB006CB06E /* gum.png */; }; | ||
142 | + B891A55D2BCD266A006CB06E /* hand_leather.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3952BCD13AB006CB06E /* hand_leather.png */; }; | ||
143 | + B891A55E2BCD266A006CB06E /* hand_sling.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3962BCD13AB006CB06E /* hand_sling.png */; }; | ||
144 | + B891A55F2BCD266A006CB06E /* sling.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3972BCD13AB006CB06E /* sling.png */; }; | ||
145 | + B891A5602BCD266A006CB06E /* steve_head1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3982BCD13AB006CB06E /* steve_head1.png */; }; | ||
146 | + B891A5612BCD266A006CB06E /* steve_head2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3992BCD13AB006CB06E /* steve_head2.png */; }; | ||
147 | + B891A5622BCD266A006CB06E /* steve_head3.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A39A2BCD13AB006CB06E /* steve_head3.png */; }; | ||
148 | + B891A5632BCD266A006CB06E /* steve_head4.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A39B2BCD13AB006CB06E /* steve_head4.png */; }; | ||
149 | + B891A5642BCD266A006CB06E /* steve_head5.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A39C2BCD13AB006CB06E /* steve_head5.png */; }; | ||
150 | + B891A5652BCD266A006CB06E /* wooden_shelf.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A39D2BCD13AB006CB06E /* wooden_shelf.png */; }; | ||
151 | + B891A5662BCD2694006CB06E /* apples.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3652BCD13AB006CB06E /* apples.png */; }; | ||
152 | + B891A5672BCD2694006CB06E /* baguettes.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3662BCD13AB006CB06E /* baguettes.png */; }; | ||
153 | + B891A5682BCD2694006CB06E /* bananas.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3672BCD13AB006CB06E /* bananas.png */; }; | ||
154 | + B891A5692BCD2694006CB06E /* cakes.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3682BCD13AB006CB06E /* cakes.png */; }; | ||
155 | + B891A56A2BCD2694006CB06E /* chocolate.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3692BCD13AB006CB06E /* chocolate.png */; }; | ||
156 | + B891A56B2BCD2694006CB06E /* cucumbers.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A36A2BCD13AB006CB06E /* cucumbers.png */; }; | ||
157 | + B891A56C2BCD2694006CB06E /* donuts.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A36B2BCD13AB006CB06E /* donuts.png */; }; | ||
158 | + B891A56D2BCD2694006CB06E /* icecream.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A36C2BCD13AB006CB06E /* icecream.png */; }; | ||
159 | + B891A56E2BCD2695006CB06E /* lettuce.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A36D2BCD13AB006CB06E /* lettuce.png */; }; | ||
160 | + B891A56F2BCD2695006CB06E /* milk.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A36E2BCD13AB006CB06E /* milk.png */; }; | ||
161 | + B891A5702BCD2695006CB06E /* orange.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A36F2BCD13AB006CB06E /* orange.png */; }; | ||
162 | + B891A5712BCD2695006CB06E /* tomatoes.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3702BCD13AB006CB06E /* tomatoes.png */; }; | ||
163 | + B891A5722BCD26DA006CB06E /* apple_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3722BCD13AB006CB06E /* apple_splodge.png */; }; | ||
164 | + B891A5732BCD26DA006CB06E /* apple1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3732BCD13AB006CB06E /* apple1.png */; }; | ||
165 | + B891A5742BCD26DA006CB06E /* apple2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3742BCD13AB006CB06E /* apple2.png */; }; | ||
166 | + B891A5752BCD26DA006CB06E /* baguette.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3752BCD13AB006CB06E /* baguette.png */; }; | ||
167 | + B891A5762BCD26DA006CB06E /* banana_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3762BCD13AB006CB06E /* banana_splodge.png */; }; | ||
168 | + B891A5772BCD26DA006CB06E /* banana1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3772BCD13AB006CB06E /* banana1.png */; }; | ||
169 | + B891A5782BCD26DA006CB06E /* banana2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3782BCD13AB006CB06E /* banana2.png */; }; | ||
170 | + B891A5792BCD26DA006CB06E /* cake_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3792BCD13AB006CB06E /* cake_splodge.png */; }; | ||
171 | + B891A57A2BCD26DA006CB06E /* cake1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A37A2BCD13AB006CB06E /* cake1.png */; }; | ||
172 | + B891A57B2BCD26DA006CB06E /* cake2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A37B2BCD13AB006CB06E /* cake2.png */; }; | ||
173 | + B891A57C2BCD26DA006CB06E /* chocolate_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A37C2BCD13AB006CB06E /* chocolate_splodge.png */; }; | ||
174 | + B891A57D2BCD26DA006CB06E /* chocolate1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A37D2BCD13AB006CB06E /* chocolate1.png */; }; | ||
175 | + B891A57E2BCD26DA006CB06E /* chocolate2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A37E2BCD13AB006CB06E /* chocolate2.png */; }; | ||
176 | + B891A57F2BCD26DA006CB06E /* cucumber_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A37F2BCD13AB006CB06E /* cucumber_splodge.png */; }; | ||
177 | + B891A5802BCD26DA006CB06E /* cucumber1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3802BCD13AB006CB06E /* cucumber1.png */; }; | ||
178 | + B891A5812BCD26DA006CB06E /* cucumber2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3812BCD13AB006CB06E /* cucumber2.png */; }; | ||
179 | + B891A5822BCD26DA006CB06E /* donut_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3822BCD13AB006CB06E /* donut_splodge.png */; }; | ||
180 | + B891A5832BCD26DA006CB06E /* donut1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3832BCD13AB006CB06E /* donut1.png */; }; | ||
181 | + B891A5842BCD26DA006CB06E /* donut2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3842BCD13AB006CB06E /* donut2.png */; }; | ||
182 | + B891A5852BCD26DA006CB06E /* icecream_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3852BCD13AB006CB06E /* icecream_splodge.png */; }; | ||
183 | + B891A5862BCD26DA006CB06E /* icecream1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3862BCD13AB006CB06E /* icecream1.png */; }; | ||
184 | + B891A5872BCD26DA006CB06E /* icecream2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3872BCD13AB006CB06E /* icecream2.png */; }; | ||
185 | + B891A5882BCD26DA006CB06E /* lettuce.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3882BCD13AB006CB06E /* lettuce.png */; }; | ||
186 | + B891A5892BCD26DA006CB06E /* milk.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3892BCD13AB006CB06E /* milk.png */; }; | ||
187 | + B891A58A2BCD26DA006CB06E /* orange.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A38A2BCD13AB006CB06E /* orange.png */; }; | ||
188 | + B891A58B2BCD26DA006CB06E /* tomato_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A38B2BCD13AB006CB06E /* tomato_splodge.png */; }; | ||
189 | + B891A58C2BCD26DA006CB06E /* tomato1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A38C2BCD13AB006CB06E /* tomato1.png */; }; | ||
190 | + B891A58D2BCD26DA006CB06E /* tomato2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A38D2BCD13AB006CB06E /* tomato2.png */; }; | ||
191 | + B891A58E2BCD26F9006CB06E /* accept_button.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3A12BCD13AB006CB06E /* accept_button.png */; }; | ||
192 | + B891A58F2BCD26F9006CB06E /* accept_popup.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3A22BCD13AB006CB06E /* accept_popup.png */; }; | ||
193 | + B891A5902BCD271D006CB06E /* app_link_halloween.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3AA2BCD13AB006CB06E /* app_link_halloween.png */; }; | ||
194 | + B891A5912BCD271D006CB06E /* app_link_toy.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3AB2BCD13AB006CB06E /* app_link_toy.png */; }; | ||
195 | + B891A5922BCD271D006CB06E /* doll_toy_app.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3AC2BCD13AB006CB06E /* doll_toy_app.png */; }; | ||
196 | + B891A5932BCD271D006CB06E /* halo_icon.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3AD2BCD13AB006CB06E /* halo_icon.png */; }; | ||
197 | + B891A5942BCD271D006CB06E /* steve_maggie.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3AE2BCD13AB006CB06E /* steve_maggie.png */; }; | ||
198 | + B891A5952BCD271D006CB06E /* witch_halloween_app.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3AF2BCD13AB006CB06E /* witch_halloween_app.png */; }; | ||
199 | + B891A5962BCD2734006CB06E /* horizontalButtonPanelBackFFPause.obl in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3C22BCD13AB006CB06E /* horizontalButtonPanelBackFFPause.obl */; }; | ||
200 | + B891A5972BCD274C006CB06E /* button_back.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3B12BCD13AB006CB06E /* button_back.png */; }; | ||
201 | + B891A5982BCD274C006CB06E /* button_go.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3B22BCD13AB006CB06E /* button_go.png */; }; | ||
202 | + B891A5992BCD274C006CB06E /* button_green.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3B32BCD13AB006CB06E /* button_green.png */; }; | ||
203 | + B891A59A2BCD274C006CB06E /* button_grey.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3B42BCD13AB006CB06E /* button_grey.png */; }; | ||
204 | + B891A59B2BCD274C006CB06E /* button_orange.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3B52BCD13AB006CB06E /* button_orange.png */; }; | ||
205 | + B891A59C2BCD274C006CB06E /* button_pause.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3B62BCD13AB006CB06E /* button_pause.png */; }; | ||
206 | + B891A59D2BCD274C006CB06E /* button_purple.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3B72BCD13AB006CB06E /* button_purple.png */; }; | ||
207 | + B891A59E2BCD274C006CB06E /* button_red.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3B82BCD13AB006CB06E /* button_red.png */; }; | ||
208 | + B891A59F2BCD274C006CB06E /* button_repeat.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3B92BCD13AB006CB06E /* button_repeat.png */; }; | ||
209 | + B891A5A02BCD274C006CB06E /* button_setting.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3BA2BCD13AB006CB06E /* button_setting.png */; }; | ||
210 | + B891A5A12BCD274C006CB06E /* button_sound_off.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3BB2BCD13AB006CB06E /* button_sound_off.png */; }; | ||
211 | + B891A5A22BCD274C006CB06E /* button_sound_on.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3BC2BCD13AB006CB06E /* button_sound_on.png */; }; | ||
212 | + B891A5A32BCD274C006CB06E /* button_turquoise.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3BD2BCD13AB006CB06E /* button_turquoise.png */; }; | ||
213 | + B891A5A42BCD274C006CB06E /* button_yellow.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3BE2BCD13AB006CB06E /* button_yellow.png */; }; | ||
214 | + B891A5A52BCD274C006CB06E /* buttonff.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3BF2BCD13AB006CB06E /* buttonff.png */; }; | ||
215 | + B891A5A62BCD274C006CB06E /* dark_green.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3C02BCD13AB006CB06E /* dark_green.png */; }; | ||
216 | + B891A5A72BCD2768006CB06E /* g_finger.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A4092BCD13AB006CB06E /* g_finger.png */; }; | ||
217 | + B891A5A82BCD2768006CB06E /* g_life_indicator_dead.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A40A2BCD13AB006CB06E /* g_life_indicator_dead.png */; }; | ||
218 | + B891A5A92BCD2768006CB06E /* g_life_indicator_ok.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A40B2BCD13AB006CB06E /* g_life_indicator_ok.png */; }; | ||
219 | + B891A5AA2BCD2768006CB06E /* level_halo.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A40C2BCD13AB006CB06E /* level_halo.png */; }; | ||
220 | + B891A5AB2BCD278E006CB06E /* level_1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3C42BCD13AB006CB06E /* level_1.png */; }; | ||
221 | + B891A5AC2BCD278E006CB06E /* level_2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3C52BCD13AB006CB06E /* level_2.png */; }; | ||
222 | + B891A5AD2BCD278E006CB06E /* level_3.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3C62BCD13AB006CB06E /* level_3.png */; }; | ||
223 | + B891A5AE2BCD27A7006CB06E /* scene_layout.scl in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A4042BCD13AB006CB06E /* scene_layout.scl */; }; | ||
224 | + B891A5AF2BCD27C5006CB06E /* background.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3F22BCD13AB006CB06E /* background.png */; }; | ||
225 | + B891A5B02BCD27C5006CB06E /* cart_back1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3F32BCD13AB006CB06E /* cart_back1.png */; }; | ||
226 | + B891A5B12BCD27C5006CB06E /* cart_back2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3F42BCD13AB006CB06E /* cart_back2.png */; }; | ||
227 | + B891A5B22BCD27C5006CB06E /* cart_front.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3F52BCD13AB006CB06E /* cart_front.png */; }; | ||
228 | + B891A5B32BCD27C5006CB06E /* clock.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3F62BCD13AB006CB06E /* clock.png */; }; | ||
229 | + B891A5B42BCD27C5006CB06E /* food_in_cart.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3F72BCD13AB006CB06E /* food_in_cart.png */; }; | ||
230 | + B891A5B52BCD27C5006CB06E /* gum.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3F82BCD13AB006CB06E /* gum.png */; }; | ||
231 | + B891A5B62BCD27C5006CB06E /* hand_leather.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3F92BCD13AB006CB06E /* hand_leather.png */; }; | ||
232 | + B891A5B72BCD27C5006CB06E /* hand_sling.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3FA2BCD13AB006CB06E /* hand_sling.png */; }; | ||
233 | + B891A5B82BCD27C5006CB06E /* sling.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3FB2BCD13AB006CB06E /* sling.png */; }; | ||
234 | + B891A5B92BCD27C5006CB06E /* steve_head1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3FC2BCD13AB006CB06E /* steve_head1.png */; }; | ||
235 | + B891A5BA2BCD27C5006CB06E /* steve_head2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3FD2BCD13AB006CB06E /* steve_head2.png */; }; | ||
236 | + B891A5BB2BCD27C5006CB06E /* steve_head3.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3FE2BCD13AB006CB06E /* steve_head3.png */; }; | ||
237 | + B891A5BC2BCD27C5006CB06E /* steve_head4.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3FF2BCD13AB006CB06E /* steve_head4.png */; }; | ||
238 | + B891A5BD2BCD27C5006CB06E /* steve_head5.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A4002BCD13AB006CB06E /* steve_head5.png */; }; | ||
239 | + B891A5BE2BCD27C5006CB06E /* well_done_pic.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A4012BCD13AB006CB06E /* well_done_pic.png */; }; | ||
240 | + B891A5BF2BCD27C5006CB06E /* wooden_shelf.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A4022BCD13AB006CB06E /* wooden_shelf.png */; }; | ||
241 | + B891A5C42BCD27FC006CB06E /* apples.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3C82BCD13AB006CB06E /* apples.png */; }; | ||
242 | + B891A5C52BCD27FC006CB06E /* baguettes.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3C92BCD13AB006CB06E /* baguettes.png */; }; | ||
243 | + B891A5C62BCD27FC006CB06E /* bananas.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3CA2BCD13AB006CB06E /* bananas.png */; }; | ||
244 | + B891A5C72BCD27FC006CB06E /* cakes.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3CB2BCD13AB006CB06E /* cakes.png */; }; | ||
245 | + B891A5C82BCD27FC006CB06E /* chocolate.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3CC2BCD13AB006CB06E /* chocolate.png */; }; | ||
246 | + B891A5C92BCD27FC006CB06E /* cucumbers.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3CD2BCD13AB006CB06E /* cucumbers.png */; }; | ||
247 | + B891A5CA2BCD27FC006CB06E /* donuts.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3CE2BCD13AB006CB06E /* donuts.png */; }; | ||
248 | + B891A5CB2BCD27FC006CB06E /* icecream.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3CF2BCD13AB006CB06E /* icecream.png */; }; | ||
249 | + B891A5CC2BCD27FC006CB06E /* lettuce.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3D02BCD13AB006CB06E /* lettuce.png */; }; | ||
250 | + B891A5CD2BCD27FC006CB06E /* milk.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3D12BCD13AB006CB06E /* milk.png */; }; | ||
251 | + B891A5CE2BCD27FC006CB06E /* orange.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3D22BCD13AB006CB06E /* orange.png */; }; | ||
252 | + B891A5CF2BCD27FC006CB06E /* tomatoes.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3D32BCD13AB006CB06E /* tomatoes.png */; }; | ||
253 | + B891A5D02BCD286F006CB06E /* apple_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3D52BCD13AB006CB06E /* apple_splodge.png */; }; | ||
254 | + B891A5D12BCD286F006CB06E /* apple1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3D62BCD13AB006CB06E /* apple1.png */; }; | ||
255 | + B891A5D22BCD286F006CB06E /* apple2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3D72BCD13AB006CB06E /* apple2.png */; }; | ||
256 | + B891A5D32BCD286F006CB06E /* baguette.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3D82BCD13AB006CB06E /* baguette.png */; }; | ||
257 | + B891A5D42BCD286F006CB06E /* banana_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3D92BCD13AB006CB06E /* banana_splodge.png */; }; | ||
258 | + B891A5D52BCD286F006CB06E /* banana1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3DA2BCD13AB006CB06E /* banana1.png */; }; | ||
259 | + B891A5D62BCD286F006CB06E /* banana2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3DB2BCD13AB006CB06E /* banana2.png */; }; | ||
260 | + B891A5D72BCD286F006CB06E /* cake_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3DC2BCD13AB006CB06E /* cake_splodge.png */; }; | ||
261 | + B891A5D82BCD286F006CB06E /* cake1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3DD2BCD13AB006CB06E /* cake1.png */; }; | ||
262 | + B891A5D92BCD286F006CB06E /* cake2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3DE2BCD13AB006CB06E /* cake2.png */; }; | ||
263 | + B891A5DA2BCD2870006CB06E /* chocolate_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3DF2BCD13AB006CB06E /* chocolate_splodge.png */; }; | ||
264 | + B891A5DB2BCD2870006CB06E /* chocolate1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3E02BCD13AB006CB06E /* chocolate1.png */; }; | ||
265 | + B891A5DC2BCD2870006CB06E /* chocolate2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3E12BCD13AB006CB06E /* chocolate2.png */; }; | ||
266 | + B891A5DD2BCD2870006CB06E /* cucumber_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3E22BCD13AB006CB06E /* cucumber_splodge.png */; }; | ||
267 | + B891A5DE2BCD2870006CB06E /* cucumber1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3E32BCD13AB006CB06E /* cucumber1.png */; }; | ||
268 | + B891A5DF2BCD2870006CB06E /* cucumber2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3E42BCD13AB006CB06E /* cucumber2.png */; }; | ||
269 | + B891A5E02BCD2870006CB06E /* donut_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3E52BCD13AB006CB06E /* donut_splodge.png */; }; | ||
270 | + B891A5E12BCD2870006CB06E /* donut1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3E62BCD13AB006CB06E /* donut1.png */; }; | ||
271 | + B891A5E22BCD2870006CB06E /* donut2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3E72BCD13AB006CB06E /* donut2.png */; }; | ||
272 | + B891A5E32BCD2870006CB06E /* icecream_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3E82BCD13AB006CB06E /* icecream_splodge.png */; }; | ||
273 | + B891A5E42BCD2870006CB06E /* icecream1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3E92BCD13AB006CB06E /* icecream1.png */; }; | ||
274 | + B891A5E52BCD2870006CB06E /* icecream2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3EA2BCD13AB006CB06E /* icecream2.png */; }; | ||
275 | + B891A5E62BCD2870006CB06E /* lettuce.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3EB2BCD13AB006CB06E /* lettuce.png */; }; | ||
276 | + B891A5E72BCD2870006CB06E /* milk.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3EC2BCD13AB006CB06E /* milk.png */; }; | ||
277 | + B891A5E82BCD2870006CB06E /* orange.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3ED2BCD13AB006CB06E /* orange.png */; }; | ||
278 | + B891A5E92BCD2870006CB06E /* tomato_splodge.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3EE2BCD13AB006CB06E /* tomato_splodge.png */; }; | ||
279 | + B891A5EA2BCD2870006CB06E /* tomato1.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3EF2BCD13AB006CB06E /* tomato1.png */; }; | ||
280 | + B891A5EB2BCD2870006CB06E /* tomato2.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A3F02BCD13AB006CB06E /* tomato2.png */; }; | ||
281 | + B891A5EC2BCD2881006CB06E /* accept_button.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A4062BCD13AB006CB06E /* accept_button.png */; }; | ||
282 | + B891A5ED2BCD2881006CB06E /* accept_popup.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = B891A4072BCD13AB006CB06E /* accept_popup.png */; }; | ||
20 | F5FCE34FB9E028C20A7850DE /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2A3DBEAB6142776646A34D9C /* Pods_RunnerTests.framework */; }; | 283 | F5FCE34FB9E028C20A7850DE /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2A3DBEAB6142776646A34D9C /* Pods_RunnerTests.framework */; }; |
21 | FB8AFCB0A8C34B5508A68F45 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6DEBBC1D861BE053F3ECE0B9 /* Pods_Runner.framework */; }; | 284 | FB8AFCB0A8C34B5508A68F45 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6DEBBC1D861BE053F3ECE0B9 /* Pods_Runner.framework */; }; |
22 | /* End PBXBuildFile section */ | 285 | /* End PBXBuildFile section */ |
@@ -113,6 +376,90 @@ | @@ -113,6 +376,90 @@ | ||
113 | remoteGlobalIDString = B7090455528040A188F88B63; | 376 | remoteGlobalIDString = B7090455528040A188F88B63; |
114 | remoteInfo = external; | 377 | remoteInfo = external; |
115 | }; | 378 | }; |
379 | + B891A2372BCD0799006CB06E /* PBXContainerItemProxy */ = { | ||
380 | + isa = PBXContainerItemProxy; | ||
381 | + containerPortal = B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */; | ||
382 | + proxyType = 1; | ||
383 | + remoteGlobalIDString = 3807F551AD064687B13953E9; | ||
384 | + remoteInfo = cocos2d; | ||
385 | + }; | ||
386 | + B891A2472BCD07A0006CB06E /* PBXContainerItemProxy */ = { | ||
387 | + isa = PBXContainerItemProxy; | ||
388 | + containerPortal = B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */; | ||
389 | + proxyType = 1; | ||
390 | + remoteGlobalIDString = 93D47B87033C4D7FAE278F63; | ||
391 | + remoteInfo = ext_clipper; | ||
392 | + }; | ||
393 | + B891A2492BCD07A4006CB06E /* PBXContainerItemProxy */ = { | ||
394 | + isa = PBXContainerItemProxy; | ||
395 | + containerPortal = B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */; | ||
396 | + proxyType = 1; | ||
397 | + remoteGlobalIDString = 9B5B61961265480B9501BB85; | ||
398 | + remoteInfo = ext_convertUTF; | ||
399 | + }; | ||
400 | + B891A24B2BCD07AE006CB06E /* PBXContainerItemProxy */ = { | ||
401 | + isa = PBXContainerItemProxy; | ||
402 | + containerPortal = B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */; | ||
403 | + proxyType = 1; | ||
404 | + remoteGlobalIDString = 640C23AC632B46BCB77CCD82; | ||
405 | + remoteInfo = ext_edtaa3func; | ||
406 | + }; | ||
407 | + B891A24D2BCD07AE006CB06E /* PBXContainerItemProxy */ = { | ||
408 | + isa = PBXContainerItemProxy; | ||
409 | + containerPortal = B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */; | ||
410 | + proxyType = 1; | ||
411 | + remoteGlobalIDString = 618D32556072465F93DE7875; | ||
412 | + remoteInfo = ext_md5; | ||
413 | + }; | ||
414 | + B891A24F2BCD07AE006CB06E /* PBXContainerItemProxy */ = { | ||
415 | + isa = PBXContainerItemProxy; | ||
416 | + containerPortal = B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */; | ||
417 | + proxyType = 1; | ||
418 | + remoteGlobalIDString = 8C44DCE97EE54C668F009408; | ||
419 | + remoteInfo = ext_poly2tri; | ||
420 | + }; | ||
421 | + B891A2512BCD07AE006CB06E /* PBXContainerItemProxy */ = { | ||
422 | + isa = PBXContainerItemProxy; | ||
423 | + containerPortal = B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */; | ||
424 | + proxyType = 1; | ||
425 | + remoteGlobalIDString = 0CD8E5254AFF4CC6A098CCCD; | ||
426 | + remoteInfo = ext_recast; | ||
427 | + }; | ||
428 | + B891A2532BCD07AE006CB06E /* PBXContainerItemProxy */ = { | ||
429 | + isa = PBXContainerItemProxy; | ||
430 | + containerPortal = B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */; | ||
431 | + proxyType = 1; | ||
432 | + remoteGlobalIDString = 7D4C0E93B1B6458FB6F41437; | ||
433 | + remoteInfo = ext_tinyxml2; | ||
434 | + }; | ||
435 | + B891A2552BCD07AE006CB06E /* PBXContainerItemProxy */ = { | ||
436 | + isa = PBXContainerItemProxy; | ||
437 | + containerPortal = B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */; | ||
438 | + proxyType = 1; | ||
439 | + remoteGlobalIDString = 14848C4B886C463A8DDC1934; | ||
440 | + remoteInfo = ext_unzip; | ||
441 | + }; | ||
442 | + B891A2572BCD07AE006CB06E /* PBXContainerItemProxy */ = { | ||
443 | + isa = PBXContainerItemProxy; | ||
444 | + containerPortal = B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */; | ||
445 | + proxyType = 1; | ||
446 | + remoteGlobalIDString = 660C78B688AA476E92DA3337; | ||
447 | + remoteInfo = ext_xxhash; | ||
448 | + }; | ||
449 | + B891A2592BCD07AE006CB06E /* PBXContainerItemProxy */ = { | ||
450 | + isa = PBXContainerItemProxy; | ||
451 | + containerPortal = B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */; | ||
452 | + proxyType = 1; | ||
453 | + remoteGlobalIDString = F4506C5795E24DF09078A7A5; | ||
454 | + remoteInfo = ext_xxtea; | ||
455 | + }; | ||
456 | + B891A25B2BCD07AE006CB06E /* PBXContainerItemProxy */ = { | ||
457 | + isa = PBXContainerItemProxy; | ||
458 | + containerPortal = B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */; | ||
459 | + proxyType = 1; | ||
460 | + remoteGlobalIDString = 3035DDACD99D43368F5F0015; | ||
461 | + remoteInfo = external; | ||
462 | + }; | ||
116 | /* End PBXContainerItemProxy section */ | 463 | /* End PBXContainerItemProxy section */ |
117 | 464 | ||
118 | /* Begin PBXCopyFilesBuildPhase section */ | 465 | /* Begin PBXCopyFilesBuildPhase section */ |
@@ -123,152 +470,1652 @@ | @@ -123,152 +470,1652 @@ | ||
123 | dstSubfolderSpec = 10; | 470 | dstSubfolderSpec = 10; |
124 | files = ( | 471 | files = ( |
125 | ); | 472 | ); |
126 | - name = "Embed Frameworks"; | ||
127 | - runOnlyForDeploymentPostprocessing = 0; | 473 | + name = "Embed Frameworks"; |
474 | + runOnlyForDeploymentPostprocessing = 0; | ||
475 | + }; | ||
476 | + B891A4F12BCD17E2006CB06E /* CopyFiles */ = { | ||
477 | + isa = PBXCopyFilesBuildPhase; | ||
478 | + buildActionMask = 2147483647; | ||
479 | + dstPath = ""; | ||
480 | + dstSubfolderSpec = 7; | ||
481 | + files = ( | ||
482 | + ); | ||
483 | + runOnlyForDeploymentPostprocessing = 0; | ||
484 | + }; | ||
485 | + B891A4F22BCD240A006CB06E /* CopyFiles */ = { | ||
486 | + isa = PBXCopyFilesBuildPhase; | ||
487 | + buildActionMask = 2147483647; | ||
488 | + dstPath = fonts; | ||
489 | + dstSubfolderSpec = 7; | ||
490 | + files = ( | ||
491 | + B891A4F92BCD2429006CB06E /* ComicSansMSBold.ttf in CopyFiles */, | ||
492 | + B891A4FA2BCD2429006CB06E /* ComicSansMSRegular.ttf in CopyFiles */, | ||
493 | + ); | ||
494 | + runOnlyForDeploymentPostprocessing = 0; | ||
495 | + }; | ||
496 | + B891A4F32BCD240C006CB06E /* CopyFiles */ = { | ||
497 | + isa = PBXCopyFilesBuildPhase; | ||
498 | + buildActionMask = 2147483647; | ||
499 | + dstPath = res; | ||
500 | + dstSubfolderSpec = 7; | ||
501 | + files = ( | ||
502 | + B891A4FB2BCD2449006CB06E /* .gitkeep in CopyFiles */, | ||
503 | + ); | ||
504 | + runOnlyForDeploymentPostprocessing = 0; | ||
505 | + }; | ||
506 | + B891A4F42BCD240D006CB06E /* CopyFiles */ = { | ||
507 | + isa = PBXCopyFilesBuildPhase; | ||
508 | + buildActionMask = 2147483647; | ||
509 | + dstPath = res/common; | ||
510 | + dstSubfolderSpec = 7; | ||
511 | + files = ( | ||
512 | + ); | ||
513 | + runOnlyForDeploymentPostprocessing = 0; | ||
514 | + }; | ||
515 | + B891A4F52BCD240E006CB06E /* CopyFiles */ = { | ||
516 | + isa = PBXCopyFilesBuildPhase; | ||
517 | + buildActionMask = 2147483647; | ||
518 | + dstPath = res/common/games; | ||
519 | + dstSubfolderSpec = 7; | ||
520 | + files = ( | ||
521 | + ); | ||
522 | + runOnlyForDeploymentPostprocessing = 0; | ||
523 | + }; | ||
524 | + B891A4F62BCD240F006CB06E /* CopyFiles */ = { | ||
525 | + isa = PBXCopyFilesBuildPhase; | ||
526 | + buildActionMask = 2147483647; | ||
527 | + dstPath = res/common/games/shoot_game; | ||
528 | + dstSubfolderSpec = 7; | ||
529 | + files = ( | ||
530 | + B891A4FC2BCD2488006CB06E /* gconfig.gcf in CopyFiles */, | ||
531 | + ); | ||
532 | + runOnlyForDeploymentPostprocessing = 0; | ||
533 | + }; | ||
534 | + B891A4F72BCD2410006CB06E /* CopyFiles */ = { | ||
535 | + isa = PBXCopyFilesBuildPhase; | ||
536 | + buildActionMask = 2147483647; | ||
537 | + dstPath = res/common/sounds; | ||
538 | + dstSubfolderSpec = 7; | ||
539 | + files = ( | ||
540 | + ); | ||
541 | + runOnlyForDeploymentPostprocessing = 0; | ||
542 | + }; | ||
543 | + B891A4F82BCD2411006CB06E /* CopyFiles */ = { | ||
544 | + isa = PBXCopyFilesBuildPhase; | ||
545 | + buildActionMask = 2147483647; | ||
546 | + dstPath = res/common/sounds/games; | ||
547 | + dstSubfolderSpec = 7; | ||
548 | + files = ( | ||
549 | + B891A4FD2BCD24CA006CB06E /* g_no.mp3 in CopyFiles */, | ||
550 | + B891A4FE2BCD24CA006CB06E /* g_oops.mp3 in CopyFiles */, | ||
551 | + B891A4FF2BCD24CA006CB06E /* g_uh_oh.mp3 in CopyFiles */, | ||
552 | + B891A5002BCD24CA006CB06E /* g_well_done.mp3 in CopyFiles */, | ||
553 | + B891A5012BCD24CA006CB06E /* g_whoo_hoo.mp3 in CopyFiles */, | ||
554 | + B891A5022BCD24CA006CB06E /* g_yeah.mp3 in CopyFiles */, | ||
555 | + B891A5032BCD24CA006CB06E /* maggie_super.mp3 in CopyFiles */, | ||
556 | + B891A5042BCD24CA006CB06E /* maggie_thats_right.mp3 in CopyFiles */, | ||
557 | + B891A5052BCD24CA006CB06E /* maggie_yeah.mp3 in CopyFiles */, | ||
558 | + ); | ||
559 | + runOnlyForDeploymentPostprocessing = 0; | ||
560 | + }; | ||
561 | + B891A5062BCD24CE006CB06E /* CopyFiles */ = { | ||
562 | + isa = PBXCopyFilesBuildPhase; | ||
563 | + buildActionMask = 2147483647; | ||
564 | + dstPath = res/common/sounds/games/game_shoot; | ||
565 | + dstSubfolderSpec = 7; | ||
566 | + files = ( | ||
567 | + B891A50F2BCD2524006CB06E /* all_in_trolley.mp3 in CopyFiles */, | ||
568 | + B891A5102BCD2524006CB06E /* apple.mp3 in CopyFiles */, | ||
569 | + B891A5112BCD2524006CB06E /* banana.mp3 in CopyFiles */, | ||
570 | + B891A5122BCD2524006CB06E /* cake.mp3 in CopyFiles */, | ||
571 | + B891A5132BCD2524006CB06E /* chocolate.mp3 in CopyFiles */, | ||
572 | + B891A5142BCD2524006CB06E /* cucumber.mp3 in CopyFiles */, | ||
573 | + B891A5152BCD2524006CB06E /* donut.mp3 in CopyFiles */, | ||
574 | + B891A5162BCD2524006CB06E /* effect_catapult.mp3 in CopyFiles */, | ||
575 | + B891A5172BCD2524006CB06E /* effect_hit.mp3 in CopyFiles */, | ||
576 | + B891A5182BCD2524006CB06E /* effect_in_trolley.mp3 in CopyFiles */, | ||
577 | + B891A5192BCD2524006CB06E /* hit_maggie.mp3 in CopyFiles */, | ||
578 | + B891A51A2BCD2524006CB06E /* hit_steve.mp3 in CopyFiles */, | ||
579 | + B891A51B2BCD2524006CB06E /* icecream.mp3 in CopyFiles */, | ||
580 | + B891A51C2BCD2524006CB06E /* in_trolley.mp3 in CopyFiles */, | ||
581 | + B891A51D2BCD2524006CB06E /* not_apple.mp3 in CopyFiles */, | ||
582 | + B891A51E2BCD2524006CB06E /* not_banana.mp3 in CopyFiles */, | ||
583 | + B891A51F2BCD2524006CB06E /* not_cake.mp3 in CopyFiles */, | ||
584 | + B891A5202BCD2524006CB06E /* not_chocolate.mp3 in CopyFiles */, | ||
585 | + B891A5212BCD2524006CB06E /* not_cucumber.mp3 in CopyFiles */, | ||
586 | + B891A5222BCD2524006CB06E /* not_donut.mp3 in CopyFiles */, | ||
587 | + B891A5232BCD2524006CB06E /* not_icecream.mp3 in CopyFiles */, | ||
588 | + B891A5242BCD2524006CB06E /* not_in_trolley.mp3 in CopyFiles */, | ||
589 | + B891A5252BCD2524006CB06E /* not_tomato.mp3 in CopyFiles */, | ||
590 | + B891A5262BCD2524006CB06E /* put_it_trolley.mp3 in CopyFiles */, | ||
591 | + B891A5272BCD2524006CB06E /* shop_closed.mp3 in CopyFiles */, | ||
592 | + B891A5282BCD2524006CB06E /* start.mp3 in CopyFiles */, | ||
593 | + B891A5292BCD2524006CB06E /* tomato.mp3 in CopyFiles */, | ||
594 | + B891A52A2BCD2524006CB06E /* wrong_3_times.mp3 in CopyFiles */, | ||
595 | + ); | ||
596 | + runOnlyForDeploymentPostprocessing = 0; | ||
597 | + }; | ||
598 | + B891A5072BCD24DF006CB06E /* CopyFiles */ = { | ||
599 | + isa = PBXCopyFilesBuildPhase; | ||
600 | + buildActionMask = 2147483647; | ||
601 | + dstPath = res/common/sounds/level_picking; | ||
602 | + dstSubfolderSpec = 7; | ||
603 | + files = ( | ||
604 | + B891A52B2BCD2547006CB06E /* g_pick_level.mp3 in CopyFiles */, | ||
605 | + ); | ||
606 | + runOnlyForDeploymentPostprocessing = 0; | ||
607 | + }; | ||
608 | + B891A5082BCD24E0006CB06E /* CopyFiles */ = { | ||
609 | + isa = PBXCopyFilesBuildPhase; | ||
610 | + buildActionMask = 2147483647; | ||
611 | + dstPath = res/small; | ||
612 | + dstSubfolderSpec = 7; | ||
613 | + files = ( | ||
614 | + ); | ||
615 | + runOnlyForDeploymentPostprocessing = 0; | ||
616 | + }; | ||
617 | + B891A5092BCD24E1006CB06E /* CopyFiles */ = { | ||
618 | + isa = PBXCopyFilesBuildPhase; | ||
619 | + buildActionMask = 2147483647; | ||
620 | + dstPath = res/small/app_links; | ||
621 | + dstSubfolderSpec = 7; | ||
622 | + files = ( | ||
623 | + B891A52C2BCD2576006CB06E /* app_link_halloween.png in CopyFiles */, | ||
624 | + B891A52D2BCD2576006CB06E /* app_link_toy.png in CopyFiles */, | ||
625 | + B891A52E2BCD2576006CB06E /* doll_toy_app.png in CopyFiles */, | ||
626 | + B891A52F2BCD2576006CB06E /* halo_icon.png in CopyFiles */, | ||
627 | + B891A5302BCD2576006CB06E /* steve_maggie.png in CopyFiles */, | ||
628 | + B891A5312BCD2576006CB06E /* witch_halloween_app.png in CopyFiles */, | ||
629 | + ); | ||
630 | + runOnlyForDeploymentPostprocessing = 0; | ||
631 | + }; | ||
632 | + B891A50A2BCD24E2006CB06E /* CopyFiles */ = { | ||
633 | + isa = PBXCopyFilesBuildPhase; | ||
634 | + buildActionMask = 2147483647; | ||
635 | + dstPath = res/small/buttons; | ||
636 | + dstSubfolderSpec = 7; | ||
637 | + files = ( | ||
638 | + B891A5322BCD259B006CB06E /* horizontalButtonPanelBackFFPause.obl in CopyFiles */, | ||
639 | + ); | ||
640 | + runOnlyForDeploymentPostprocessing = 0; | ||
641 | + }; | ||
642 | + B891A50B2BCD24E3006CB06E /* CopyFiles */ = { | ||
643 | + isa = PBXCopyFilesBuildPhase; | ||
644 | + buildActionMask = 2147483647; | ||
645 | + dstPath = res/small/buttons/graphics; | ||
646 | + dstSubfolderSpec = 7; | ||
647 | + files = ( | ||
648 | + B891A5332BCD25B4006CB06E /* button_back.png in CopyFiles */, | ||
649 | + B891A5342BCD25B4006CB06E /* button_go.png in CopyFiles */, | ||
650 | + B891A5352BCD25B4006CB06E /* button_green.png in CopyFiles */, | ||
651 | + B891A5362BCD25B4006CB06E /* button_grey.png in CopyFiles */, | ||
652 | + B891A5372BCD25B4006CB06E /* button_orange.png in CopyFiles */, | ||
653 | + B891A5382BCD25B4006CB06E /* button_pause.png in CopyFiles */, | ||
654 | + B891A5392BCD25B4006CB06E /* button_purple.png in CopyFiles */, | ||
655 | + B891A53A2BCD25B4006CB06E /* button_red.png in CopyFiles */, | ||
656 | + B891A53B2BCD25B4006CB06E /* button_repeat.png in CopyFiles */, | ||
657 | + B891A53C2BCD25B4006CB06E /* button_setting.png in CopyFiles */, | ||
658 | + B891A53D2BCD25B4006CB06E /* button_sound_off.png in CopyFiles */, | ||
659 | + B891A53E2BCD25B4006CB06E /* button_sound_on.png in CopyFiles */, | ||
660 | + B891A53F2BCD25B4006CB06E /* button_turquoise.png in CopyFiles */, | ||
661 | + B891A5402BCD25B4006CB06E /* button_yellow.png in CopyFiles */, | ||
662 | + B891A5412BCD25B4006CB06E /* buttonff.png in CopyFiles */, | ||
663 | + B891A5422BCD25B4006CB06E /* dark_green.png in CopyFiles */, | ||
664 | + ); | ||
665 | + runOnlyForDeploymentPostprocessing = 0; | ||
666 | + }; | ||
667 | + B891A50C2BCD24E4006CB06E /* CopyFiles */ = { | ||
668 | + isa = PBXCopyFilesBuildPhase; | ||
669 | + buildActionMask = 2147483647; | ||
670 | + dstPath = res/small/graphics; | ||
671 | + dstSubfolderSpec = 7; | ||
672 | + files = ( | ||
673 | + B891A5432BCD25D4006CB06E /* g_finger.png in CopyFiles */, | ||
674 | + B891A5442BCD25D4006CB06E /* g_life_indicator_dead.png in CopyFiles */, | ||
675 | + B891A5452BCD25D4006CB06E /* g_life_indicator_ok.png in CopyFiles */, | ||
676 | + B891A5462BCD25D4006CB06E /* level_halo.png in CopyFiles */, | ||
677 | + ); | ||
678 | + runOnlyForDeploymentPostprocessing = 0; | ||
679 | + }; | ||
680 | + B891A50D2BCD24E5006CB06E /* CopyFiles */ = { | ||
681 | + isa = PBXCopyFilesBuildPhase; | ||
682 | + buildActionMask = 2147483647; | ||
683 | + dstPath = res/small/graphics/levels; | ||
684 | + dstSubfolderSpec = 7; | ||
685 | + files = ( | ||
686 | + B891A5472BCD25F0006CB06E /* level_1.png in CopyFiles */, | ||
687 | + B891A5482BCD25F0006CB06E /* level_2.png in CopyFiles */, | ||
688 | + B891A5492BCD25F0006CB06E /* level_3.png in CopyFiles */, | ||
689 | + ); | ||
690 | + runOnlyForDeploymentPostprocessing = 0; | ||
691 | + }; | ||
692 | + B891A50E2BCD24E6006CB06E /* CopyFiles */ = { | ||
693 | + isa = PBXCopyFilesBuildPhase; | ||
694 | + buildActionMask = 2147483647; | ||
695 | + dstPath = res/small/graphics/shoot_game; | ||
696 | + dstSubfolderSpec = 7; | ||
697 | + files = ( | ||
698 | + B891A54A2BCD2615006CB06E /* scene_layout.scl in CopyFiles */, | ||
699 | + ); | ||
700 | + runOnlyForDeploymentPostprocessing = 0; | ||
701 | + }; | ||
702 | + B891A54B2BCD261A006CB06E /* CopyFiles */ = { | ||
703 | + isa = PBXCopyFilesBuildPhase; | ||
704 | + buildActionMask = 2147483647; | ||
705 | + dstPath = res/small/graphics/shoot_game/graphics; | ||
706 | + dstSubfolderSpec = 7; | ||
707 | + files = ( | ||
708 | + B891A5572BCD266A006CB06E /* cart_back1.png in CopyFiles */, | ||
709 | + B891A5582BCD266A006CB06E /* cart_back2.png in CopyFiles */, | ||
710 | + B891A5592BCD266A006CB06E /* cart_front.png in CopyFiles */, | ||
711 | + B891A55A2BCD266A006CB06E /* clock.png in CopyFiles */, | ||
712 | + B891A55B2BCD266A006CB06E /* food_in_cart.png in CopyFiles */, | ||
713 | + B891A55C2BCD266A006CB06E /* gum.png in CopyFiles */, | ||
714 | + B891A55D2BCD266A006CB06E /* hand_leather.png in CopyFiles */, | ||
715 | + B891A55E2BCD266A006CB06E /* hand_sling.png in CopyFiles */, | ||
716 | + B891A55F2BCD266A006CB06E /* sling.png in CopyFiles */, | ||
717 | + B891A5602BCD266A006CB06E /* steve_head1.png in CopyFiles */, | ||
718 | + B891A5612BCD266A006CB06E /* steve_head2.png in CopyFiles */, | ||
719 | + B891A5622BCD266A006CB06E /* steve_head3.png in CopyFiles */, | ||
720 | + B891A5632BCD266A006CB06E /* steve_head4.png in CopyFiles */, | ||
721 | + B891A5642BCD266A006CB06E /* steve_head5.png in CopyFiles */, | ||
722 | + B891A5652BCD266A006CB06E /* wooden_shelf.png in CopyFiles */, | ||
723 | + ); | ||
724 | + runOnlyForDeploymentPostprocessing = 0; | ||
725 | + }; | ||
726 | + B891A54C2BCD261B006CB06E /* CopyFiles */ = { | ||
727 | + isa = PBXCopyFilesBuildPhase; | ||
728 | + buildActionMask = 2147483647; | ||
729 | + dstPath = res/small/graphics/shoot_game/graphics/shelf_food; | ||
730 | + dstSubfolderSpec = 7; | ||
731 | + files = ( | ||
732 | + B891A5662BCD2694006CB06E /* apples.png in CopyFiles */, | ||
733 | + B891A5672BCD2694006CB06E /* baguettes.png in CopyFiles */, | ||
734 | + B891A5682BCD2694006CB06E /* bananas.png in CopyFiles */, | ||
735 | + B891A5692BCD2694006CB06E /* cakes.png in CopyFiles */, | ||
736 | + B891A56A2BCD2694006CB06E /* chocolate.png in CopyFiles */, | ||
737 | + B891A56B2BCD2694006CB06E /* cucumbers.png in CopyFiles */, | ||
738 | + B891A56C2BCD2694006CB06E /* donuts.png in CopyFiles */, | ||
739 | + B891A56D2BCD2694006CB06E /* icecream.png in CopyFiles */, | ||
740 | + B891A56E2BCD2695006CB06E /* lettuce.png in CopyFiles */, | ||
741 | + B891A56F2BCD2695006CB06E /* milk.png in CopyFiles */, | ||
742 | + B891A5702BCD2695006CB06E /* orange.png in CopyFiles */, | ||
743 | + B891A5712BCD2695006CB06E /* tomatoes.png in CopyFiles */, | ||
744 | + ); | ||
745 | + runOnlyForDeploymentPostprocessing = 0; | ||
746 | + }; | ||
747 | + B891A54D2BCD261C006CB06E /* CopyFiles */ = { | ||
748 | + isa = PBXCopyFilesBuildPhase; | ||
749 | + buildActionMask = 2147483647; | ||
750 | + dstPath = res/small/graphics/shoot_game/graphics/single_food; | ||
751 | + dstSubfolderSpec = 7; | ||
752 | + files = ( | ||
753 | + B891A5722BCD26DA006CB06E /* apple_splodge.png in CopyFiles */, | ||
754 | + B891A5732BCD26DA006CB06E /* apple1.png in CopyFiles */, | ||
755 | + B891A5742BCD26DA006CB06E /* apple2.png in CopyFiles */, | ||
756 | + B891A5752BCD26DA006CB06E /* baguette.png in CopyFiles */, | ||
757 | + B891A5762BCD26DA006CB06E /* banana_splodge.png in CopyFiles */, | ||
758 | + B891A5772BCD26DA006CB06E /* banana1.png in CopyFiles */, | ||
759 | + B891A5782BCD26DA006CB06E /* banana2.png in CopyFiles */, | ||
760 | + B891A5792BCD26DA006CB06E /* cake_splodge.png in CopyFiles */, | ||
761 | + B891A57A2BCD26DA006CB06E /* cake1.png in CopyFiles */, | ||
762 | + B891A57B2BCD26DA006CB06E /* cake2.png in CopyFiles */, | ||
763 | + B891A57C2BCD26DA006CB06E /* chocolate_splodge.png in CopyFiles */, | ||
764 | + B891A57D2BCD26DA006CB06E /* chocolate1.png in CopyFiles */, | ||
765 | + B891A57E2BCD26DA006CB06E /* chocolate2.png in CopyFiles */, | ||
766 | + B891A57F2BCD26DA006CB06E /* cucumber_splodge.png in CopyFiles */, | ||
767 | + B891A5802BCD26DA006CB06E /* cucumber1.png in CopyFiles */, | ||
768 | + B891A5812BCD26DA006CB06E /* cucumber2.png in CopyFiles */, | ||
769 | + B891A5822BCD26DA006CB06E /* donut_splodge.png in CopyFiles */, | ||
770 | + B891A5832BCD26DA006CB06E /* donut1.png in CopyFiles */, | ||
771 | + B891A5842BCD26DA006CB06E /* donut2.png in CopyFiles */, | ||
772 | + B891A5852BCD26DA006CB06E /* icecream_splodge.png in CopyFiles */, | ||
773 | + B891A5862BCD26DA006CB06E /* icecream1.png in CopyFiles */, | ||
774 | + B891A5872BCD26DA006CB06E /* icecream2.png in CopyFiles */, | ||
775 | + B891A5882BCD26DA006CB06E /* lettuce.png in CopyFiles */, | ||
776 | + B891A5892BCD26DA006CB06E /* milk.png in CopyFiles */, | ||
777 | + B891A58A2BCD26DA006CB06E /* orange.png in CopyFiles */, | ||
778 | + B891A58B2BCD26DA006CB06E /* tomato_splodge.png in CopyFiles */, | ||
779 | + B891A58C2BCD26DA006CB06E /* tomato1.png in CopyFiles */, | ||
780 | + B891A58D2BCD26DA006CB06E /* tomato2.png in CopyFiles */, | ||
781 | + ); | ||
782 | + runOnlyForDeploymentPostprocessing = 0; | ||
783 | + }; | ||
784 | + B891A54E2BCD261D006CB06E /* CopyFiles */ = { | ||
785 | + isa = PBXCopyFilesBuildPhase; | ||
786 | + buildActionMask = 2147483647; | ||
787 | + dstPath = res/small/graphics/tos_popup; | ||
788 | + dstSubfolderSpec = 7; | ||
789 | + files = ( | ||
790 | + B891A58E2BCD26F9006CB06E /* accept_button.png in CopyFiles */, | ||
791 | + B891A58F2BCD26F9006CB06E /* accept_popup.png in CopyFiles */, | ||
792 | + ); | ||
793 | + runOnlyForDeploymentPostprocessing = 0; | ||
794 | + }; | ||
795 | + B891A54F2BCD261E006CB06E /* CopyFiles */ = { | ||
796 | + isa = PBXCopyFilesBuildPhase; | ||
797 | + buildActionMask = 2147483647; | ||
798 | + dstPath = res/xlarge; | ||
799 | + dstSubfolderSpec = 7; | ||
800 | + files = ( | ||
801 | + ); | ||
802 | + runOnlyForDeploymentPostprocessing = 0; | ||
803 | + }; | ||
804 | + B891A5502BCD261F006CB06E /* CopyFiles */ = { | ||
805 | + isa = PBXCopyFilesBuildPhase; | ||
806 | + buildActionMask = 2147483647; | ||
807 | + dstPath = res/xlarge/app_links; | ||
808 | + dstSubfolderSpec = 7; | ||
809 | + files = ( | ||
810 | + B891A5902BCD271D006CB06E /* app_link_halloween.png in CopyFiles */, | ||
811 | + B891A5912BCD271D006CB06E /* app_link_toy.png in CopyFiles */, | ||
812 | + B891A5922BCD271D006CB06E /* doll_toy_app.png in CopyFiles */, | ||
813 | + B891A5932BCD271D006CB06E /* halo_icon.png in CopyFiles */, | ||
814 | + B891A5942BCD271D006CB06E /* steve_maggie.png in CopyFiles */, | ||
815 | + B891A5952BCD271D006CB06E /* witch_halloween_app.png in CopyFiles */, | ||
816 | + ); | ||
817 | + runOnlyForDeploymentPostprocessing = 0; | ||
818 | + }; | ||
819 | + B891A5512BCD2620006CB06E /* CopyFiles */ = { | ||
820 | + isa = PBXCopyFilesBuildPhase; | ||
821 | + buildActionMask = 2147483647; | ||
822 | + dstPath = res/xlarge/buttons; | ||
823 | + dstSubfolderSpec = 7; | ||
824 | + files = ( | ||
825 | + B891A5962BCD2734006CB06E /* horizontalButtonPanelBackFFPause.obl in CopyFiles */, | ||
826 | + ); | ||
827 | + runOnlyForDeploymentPostprocessing = 0; | ||
828 | + }; | ||
829 | + B891A5522BCD2621006CB06E /* CopyFiles */ = { | ||
830 | + isa = PBXCopyFilesBuildPhase; | ||
831 | + buildActionMask = 2147483647; | ||
832 | + dstPath = res/xlarge/buttons/graphics; | ||
833 | + dstSubfolderSpec = 7; | ||
834 | + files = ( | ||
835 | + B891A5972BCD274C006CB06E /* button_back.png in CopyFiles */, | ||
836 | + B891A5982BCD274C006CB06E /* button_go.png in CopyFiles */, | ||
837 | + B891A5992BCD274C006CB06E /* button_green.png in CopyFiles */, | ||
838 | + B891A59A2BCD274C006CB06E /* button_grey.png in CopyFiles */, | ||
839 | + B891A59B2BCD274C006CB06E /* button_orange.png in CopyFiles */, | ||
840 | + B891A59C2BCD274C006CB06E /* button_pause.png in CopyFiles */, | ||
841 | + B891A59D2BCD274C006CB06E /* button_purple.png in CopyFiles */, | ||
842 | + B891A59E2BCD274C006CB06E /* button_red.png in CopyFiles */, | ||
843 | + B891A59F2BCD274C006CB06E /* button_repeat.png in CopyFiles */, | ||
844 | + B891A5A02BCD274C006CB06E /* button_setting.png in CopyFiles */, | ||
845 | + B891A5A12BCD274C006CB06E /* button_sound_off.png in CopyFiles */, | ||
846 | + B891A5A22BCD274C006CB06E /* button_sound_on.png in CopyFiles */, | ||
847 | + B891A5A32BCD274C006CB06E /* button_turquoise.png in CopyFiles */, | ||
848 | + B891A5A42BCD274C006CB06E /* button_yellow.png in CopyFiles */, | ||
849 | + B891A5A52BCD274C006CB06E /* buttonff.png in CopyFiles */, | ||
850 | + B891A5A62BCD274C006CB06E /* dark_green.png in CopyFiles */, | ||
851 | + ); | ||
852 | + runOnlyForDeploymentPostprocessing = 0; | ||
853 | + }; | ||
854 | + B891A5532BCD2622006CB06E /* CopyFiles */ = { | ||
855 | + isa = PBXCopyFilesBuildPhase; | ||
856 | + buildActionMask = 2147483647; | ||
857 | + dstPath = res/xlarge/graphics; | ||
858 | + dstSubfolderSpec = 7; | ||
859 | + files = ( | ||
860 | + B891A5A72BCD2768006CB06E /* g_finger.png in CopyFiles */, | ||
861 | + B891A5A82BCD2768006CB06E /* g_life_indicator_dead.png in CopyFiles */, | ||
862 | + B891A5A92BCD2768006CB06E /* g_life_indicator_ok.png in CopyFiles */, | ||
863 | + B891A5AA2BCD2768006CB06E /* level_halo.png in CopyFiles */, | ||
864 | + ); | ||
865 | + runOnlyForDeploymentPostprocessing = 0; | ||
866 | + }; | ||
867 | + B891A5542BCD2623006CB06E /* CopyFiles */ = { | ||
868 | + isa = PBXCopyFilesBuildPhase; | ||
869 | + buildActionMask = 2147483647; | ||
870 | + dstPath = res/xlarge/graphics/levels; | ||
871 | + dstSubfolderSpec = 7; | ||
872 | + files = ( | ||
873 | + B891A5AB2BCD278E006CB06E /* level_1.png in CopyFiles */, | ||
874 | + B891A5AC2BCD278E006CB06E /* level_2.png in CopyFiles */, | ||
875 | + B891A5AD2BCD278E006CB06E /* level_3.png in CopyFiles */, | ||
876 | + ); | ||
877 | + runOnlyForDeploymentPostprocessing = 0; | ||
878 | + }; | ||
879 | + B891A5552BCD2624006CB06E /* CopyFiles */ = { | ||
880 | + isa = PBXCopyFilesBuildPhase; | ||
881 | + buildActionMask = 2147483647; | ||
882 | + dstPath = res/xlarge/graphics/shoot_game; | ||
883 | + dstSubfolderSpec = 7; | ||
884 | + files = ( | ||
885 | + B891A5AE2BCD27A7006CB06E /* scene_layout.scl in CopyFiles */, | ||
886 | + ); | ||
887 | + runOnlyForDeploymentPostprocessing = 0; | ||
888 | + }; | ||
889 | + B891A5562BCD2625006CB06E /* CopyFiles */ = { | ||
890 | + isa = PBXCopyFilesBuildPhase; | ||
891 | + buildActionMask = 2147483647; | ||
892 | + dstPath = res/xlarge/graphics/shoot_game/graphics; | ||
893 | + dstSubfolderSpec = 7; | ||
894 | + files = ( | ||
895 | + B891A5AF2BCD27C5006CB06E /* background.png in CopyFiles */, | ||
896 | + B891A5B02BCD27C5006CB06E /* cart_back1.png in CopyFiles */, | ||
897 | + B891A5B12BCD27C5006CB06E /* cart_back2.png in CopyFiles */, | ||
898 | + B891A5B22BCD27C5006CB06E /* cart_front.png in CopyFiles */, | ||
899 | + B891A5B32BCD27C5006CB06E /* clock.png in CopyFiles */, | ||
900 | + B891A5B42BCD27C5006CB06E /* food_in_cart.png in CopyFiles */, | ||
901 | + B891A5B52BCD27C5006CB06E /* gum.png in CopyFiles */, | ||
902 | + B891A5B62BCD27C5006CB06E /* hand_leather.png in CopyFiles */, | ||
903 | + B891A5B72BCD27C5006CB06E /* hand_sling.png in CopyFiles */, | ||
904 | + B891A5B82BCD27C5006CB06E /* sling.png in CopyFiles */, | ||
905 | + B891A5B92BCD27C5006CB06E /* steve_head1.png in CopyFiles */, | ||
906 | + B891A5BA2BCD27C5006CB06E /* steve_head2.png in CopyFiles */, | ||
907 | + B891A5BB2BCD27C5006CB06E /* steve_head3.png in CopyFiles */, | ||
908 | + B891A5BC2BCD27C5006CB06E /* steve_head4.png in CopyFiles */, | ||
909 | + B891A5BD2BCD27C5006CB06E /* steve_head5.png in CopyFiles */, | ||
910 | + B891A5BE2BCD27C5006CB06E /* well_done_pic.png in CopyFiles */, | ||
911 | + B891A5BF2BCD27C5006CB06E /* wooden_shelf.png in CopyFiles */, | ||
912 | + ); | ||
913 | + runOnlyForDeploymentPostprocessing = 0; | ||
914 | + }; | ||
915 | + B891A5C02BCD27CC006CB06E /* CopyFiles */ = { | ||
916 | + isa = PBXCopyFilesBuildPhase; | ||
917 | + buildActionMask = 2147483647; | ||
918 | + dstPath = res/xlarge/graphics/shoot_game/graphics/shelf_food; | ||
919 | + dstSubfolderSpec = 7; | ||
920 | + files = ( | ||
921 | + B891A5C42BCD27FC006CB06E /* apples.png in CopyFiles */, | ||
922 | + B891A5C52BCD27FC006CB06E /* baguettes.png in CopyFiles */, | ||
923 | + B891A5C62BCD27FC006CB06E /* bananas.png in CopyFiles */, | ||
924 | + B891A5C72BCD27FC006CB06E /* cakes.png in CopyFiles */, | ||
925 | + B891A5C82BCD27FC006CB06E /* chocolate.png in CopyFiles */, | ||
926 | + B891A5C92BCD27FC006CB06E /* cucumbers.png in CopyFiles */, | ||
927 | + B891A5CA2BCD27FC006CB06E /* donuts.png in CopyFiles */, | ||
928 | + B891A5CB2BCD27FC006CB06E /* icecream.png in CopyFiles */, | ||
929 | + B891A5CC2BCD27FC006CB06E /* lettuce.png in CopyFiles */, | ||
930 | + B891A5CD2BCD27FC006CB06E /* milk.png in CopyFiles */, | ||
931 | + B891A5CE2BCD27FC006CB06E /* orange.png in CopyFiles */, | ||
932 | + B891A5CF2BCD27FC006CB06E /* tomatoes.png in CopyFiles */, | ||
933 | + ); | ||
934 | + runOnlyForDeploymentPostprocessing = 0; | ||
935 | + }; | ||
936 | + B891A5C12BCD27CD006CB06E /* CopyFiles */ = { | ||
937 | + isa = PBXCopyFilesBuildPhase; | ||
938 | + buildActionMask = 2147483647; | ||
939 | + dstPath = res/xlarge/graphics/shoot_game/graphics/single_food; | ||
940 | + dstSubfolderSpec = 7; | ||
941 | + files = ( | ||
942 | + B891A5D02BCD286F006CB06E /* apple_splodge.png in CopyFiles */, | ||
943 | + B891A5D12BCD286F006CB06E /* apple1.png in CopyFiles */, | ||
944 | + B891A5D22BCD286F006CB06E /* apple2.png in CopyFiles */, | ||
945 | + B891A5D32BCD286F006CB06E /* baguette.png in CopyFiles */, | ||
946 | + B891A5D42BCD286F006CB06E /* banana_splodge.png in CopyFiles */, | ||
947 | + B891A5D52BCD286F006CB06E /* banana1.png in CopyFiles */, | ||
948 | + B891A5D62BCD286F006CB06E /* banana2.png in CopyFiles */, | ||
949 | + B891A5D72BCD286F006CB06E /* cake_splodge.png in CopyFiles */, | ||
950 | + B891A5D82BCD286F006CB06E /* cake1.png in CopyFiles */, | ||
951 | + B891A5D92BCD286F006CB06E /* cake2.png in CopyFiles */, | ||
952 | + B891A5DA2BCD2870006CB06E /* chocolate_splodge.png in CopyFiles */, | ||
953 | + B891A5DB2BCD2870006CB06E /* chocolate1.png in CopyFiles */, | ||
954 | + B891A5DC2BCD2870006CB06E /* chocolate2.png in CopyFiles */, | ||
955 | + B891A5DD2BCD2870006CB06E /* cucumber_splodge.png in CopyFiles */, | ||
956 | + B891A5DE2BCD2870006CB06E /* cucumber1.png in CopyFiles */, | ||
957 | + B891A5DF2BCD2870006CB06E /* cucumber2.png in CopyFiles */, | ||
958 | + B891A5E02BCD2870006CB06E /* donut_splodge.png in CopyFiles */, | ||
959 | + B891A5E12BCD2870006CB06E /* donut1.png in CopyFiles */, | ||
960 | + B891A5E22BCD2870006CB06E /* donut2.png in CopyFiles */, | ||
961 | + B891A5E32BCD2870006CB06E /* icecream_splodge.png in CopyFiles */, | ||
962 | + B891A5E42BCD2870006CB06E /* icecream1.png in CopyFiles */, | ||
963 | + B891A5E52BCD2870006CB06E /* icecream2.png in CopyFiles */, | ||
964 | + B891A5E62BCD2870006CB06E /* lettuce.png in CopyFiles */, | ||
965 | + B891A5E72BCD2870006CB06E /* milk.png in CopyFiles */, | ||
966 | + B891A5E82BCD2870006CB06E /* orange.png in CopyFiles */, | ||
967 | + B891A5E92BCD2870006CB06E /* tomato_splodge.png in CopyFiles */, | ||
968 | + B891A5EA2BCD2870006CB06E /* tomato1.png in CopyFiles */, | ||
969 | + B891A5EB2BCD2870006CB06E /* tomato2.png in CopyFiles */, | ||
970 | + ); | ||
971 | + runOnlyForDeploymentPostprocessing = 0; | ||
972 | + }; | ||
973 | + B891A5C22BCD27CE006CB06E /* CopyFiles */ = { | ||
974 | + isa = PBXCopyFilesBuildPhase; | ||
975 | + buildActionMask = 2147483647; | ||
976 | + dstPath = res/xlarge/graphics/tos_popup; | ||
977 | + dstSubfolderSpec = 7; | ||
978 | + files = ( | ||
979 | + B891A5EC2BCD2881006CB06E /* accept_button.png in CopyFiles */, | ||
980 | + B891A5ED2BCD2881006CB06E /* accept_popup.png in CopyFiles */, | ||
981 | + ); | ||
982 | + runOnlyForDeploymentPostprocessing = 0; | ||
983 | + }; | ||
984 | +/* End PBXCopyFilesBuildPhase section */ | ||
985 | + | ||
986 | +/* Begin PBXFileReference section */ | ||
987 | + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; }; | ||
988 | + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; }; | ||
989 | + 2A3DBEAB6142776646A34D9C /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
990 | + 2DE9FE013448D0821175591C /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; }; | ||
991 | + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = "<group>"; }; | ||
992 | + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
993 | + 3563EC8D55A646823FD26A83 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; }; | ||
994 | + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; }; | ||
995 | + 48BCA0827DCB98991774F5AC /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = "<group>"; }; | ||
996 | + 52450AF02A4C415B007B3E4B /* XSMessageMehtodChannel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XSMessageMehtodChannel.swift; sourceTree = "<group>"; }; | ||
997 | + 52450AF22A4ED0EC007B3E4B /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = "<group>"; }; | ||
998 | + 525E17192A4BD03900104CDF /* VoiceXSMessageChannel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VoiceXSMessageChannel.swift; sourceTree = "<group>"; }; | ||
999 | + 6DEBBC1D861BE053F3ECE0B9 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
1000 | + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; }; | ||
1001 | + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; | ||
1002 | + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; }; | ||
1003 | + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; }; | ||
1004 | + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; }; | ||
1005 | + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
1006 | + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; }; | ||
1007 | + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; | ||
1008 | + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; | ||
1009 | + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; | ||
1010 | + B852C1342BCABB5E00A53FC4 /* GameMessageChannel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GameMessageChannel.swift; sourceTree = "<group>"; }; | ||
1011 | + B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = cocos2d_libs.xcodeproj; path = cocosgame/engine/cocos/core/cocos2d_libs.xcodeproj; sourceTree = "<group>"; }; | ||
1012 | + B891A2622BCD1392006CB06E /* TouchInterceptingLayer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TouchInterceptingLayer.cpp; sourceTree = "<group>"; }; | ||
1013 | + B891A2632BCD1392006CB06E /* TouchInterceptingLayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TouchInterceptingLayer.h; sourceTree = "<group>"; }; | ||
1014 | + B891A2652BCD1392006CB06E /* LevelPickerLayer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LevelPickerLayer.cpp; sourceTree = "<group>"; }; | ||
1015 | + B891A2662BCD1392006CB06E /* LevelPickerLayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LevelPickerLayer.h; sourceTree = "<group>"; }; | ||
1016 | + B891A2672BCD1392006CB06E /* LevelPickerView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LevelPickerView.cpp; sourceTree = "<group>"; }; | ||
1017 | + B891A2682BCD1392006CB06E /* LevelPickerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LevelPickerView.h; sourceTree = "<group>"; }; | ||
1018 | + B891A2692BCD1392006CB06E /* SimpleLevelPickerView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SimpleLevelPickerView.cpp; sourceTree = "<group>"; }; | ||
1019 | + B891A26A2BCD1392006CB06E /* SimpleLevelPickerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleLevelPickerView.h; sourceTree = "<group>"; }; | ||
1020 | + B891A26C2BCD1392006CB06E /* AlertView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AlertView.cpp; sourceTree = "<group>"; }; | ||
1021 | + B891A26D2BCD1392006CB06E /* AlertView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AlertView.h; sourceTree = "<group>"; }; | ||
1022 | + B891A26E2BCD1392006CB06E /* AppLinksView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AppLinksView.cpp; sourceTree = "<group>"; }; | ||
1023 | + B891A26F2BCD1392006CB06E /* AppLinksView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppLinksView.h; sourceTree = "<group>"; }; | ||
1024 | + B891A2702BCD1392006CB06E /* GameLifeIndicatorView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GameLifeIndicatorView.cpp; sourceTree = "<group>"; }; | ||
1025 | + B891A2712BCD1392006CB06E /* GameLifeIndicatorView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GameLifeIndicatorView.h; sourceTree = "<group>"; }; | ||
1026 | + B891A2722BCD1392006CB06E /* LevelView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LevelView.cpp; sourceTree = "<group>"; }; | ||
1027 | + B891A2732BCD1392006CB06E /* LevelView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LevelView.h; sourceTree = "<group>"; }; | ||
1028 | + B891A2742BCD1392006CB06E /* ParentalGateShowInterface.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ParentalGateShowInterface.cpp; sourceTree = "<group>"; }; | ||
1029 | + B891A2752BCD1392006CB06E /* ParentalGateShowInterface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ParentalGateShowInterface.h; sourceTree = "<group>"; }; | ||
1030 | + B891A2762BCD1392006CB06E /* ParentalGateView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ParentalGateView.cpp; sourceTree = "<group>"; }; | ||
1031 | + B891A2772BCD1392006CB06E /* ParentalGateView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ParentalGateView.h; sourceTree = "<group>"; }; | ||
1032 | + B891A2782BCD1392006CB06E /* SettingsLayer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SettingsLayer.cpp; sourceTree = "<group>"; }; | ||
1033 | + B891A2792BCD1392006CB06E /* SettingsLayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SettingsLayer.h; sourceTree = "<group>"; }; | ||
1034 | + B891A27A2BCD1392006CB06E /* TOSAcceptPopupView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TOSAcceptPopupView.cpp; sourceTree = "<group>"; }; | ||
1035 | + B891A27B2BCD1392006CB06E /* TOSAcceptPopupView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TOSAcceptPopupView.h; sourceTree = "<group>"; }; | ||
1036 | + B891A27D2BCD1392006CB06E /* ChangingSprite.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ChangingSprite.cpp; sourceTree = "<group>"; }; | ||
1037 | + B891A27E2BCD1392006CB06E /* ChangingSprite.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChangingSprite.h; sourceTree = "<group>"; }; | ||
1038 | + B891A27F2BCD1392006CB06E /* ContainerSprite.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ContainerSprite.cpp; sourceTree = "<group>"; }; | ||
1039 | + B891A2802BCD1392006CB06E /* ContainerSprite.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContainerSprite.h; sourceTree = "<group>"; }; | ||
1040 | + B891A2812BCD1392006CB06E /* PlainLabel.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PlainLabel.cpp; sourceTree = "<group>"; }; | ||
1041 | + B891A2822BCD1392006CB06E /* PlainLabel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlainLabel.h; sourceTree = "<group>"; }; | ||
1042 | + B891A2832BCD1392006CB06E /* PlainNode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PlainNode.cpp; sourceTree = "<group>"; }; | ||
1043 | + B891A2842BCD1392006CB06E /* PlainNode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlainNode.h; sourceTree = "<group>"; }; | ||
1044 | + B891A2852BCD1392006CB06E /* PlainSprite.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PlainSprite.cpp; sourceTree = "<group>"; }; | ||
1045 | + B891A2862BCD1392006CB06E /* PlainSprite.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlainSprite.h; sourceTree = "<group>"; }; | ||
1046 | + B891A2872BCD1392006CB06E /* ProgressSliderNode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ProgressSliderNode.cpp; sourceTree = "<group>"; }; | ||
1047 | + B891A2882BCD1392006CB06E /* ProgressSliderNode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProgressSliderNode.h; sourceTree = "<group>"; }; | ||
1048 | + B891A2892BCD1392006CB06E /* SimpleButton.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SimpleButton.cpp; sourceTree = "<group>"; }; | ||
1049 | + B891A28A2BCD1392006CB06E /* SimpleButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleButton.h; sourceTree = "<group>"; }; | ||
1050 | + B891A28B2BCD1392006CB06E /* TouchableSprite.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TouchableSprite.cpp; sourceTree = "<group>"; }; | ||
1051 | + B891A28C2BCD1392006CB06E /* TouchableSprite.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TouchableSprite.h; sourceTree = "<group>"; }; | ||
1052 | + B891A28D2BCD1392006CB06E /* TwoStateButton.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TwoStateButton.cpp; sourceTree = "<group>"; }; | ||
1053 | + B891A28E2BCD1392006CB06E /* TwoStateButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TwoStateButton.h; sourceTree = "<group>"; }; | ||
1054 | + B891A2902BCD1392006CB06E /* MiscConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MiscConfig.h; sourceTree = "<group>"; }; | ||
1055 | + B891A2912BCD1392006CB06E /* ResourcesConfig.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ResourcesConfig.cpp; sourceTree = "<group>"; }; | ||
1056 | + B891A2922BCD1392006CB06E /* ResourcesConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ResourcesConfig.h; sourceTree = "<group>"; }; | ||
1057 | + B891A2932BCD1392006CB06E /* Strings.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Strings.cpp; sourceTree = "<group>"; }; | ||
1058 | + B891A2942BCD1392006CB06E /* Strings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Strings.h; sourceTree = "<group>"; }; | ||
1059 | + B891A2952BCD1392006CB06E /* TouchHandlerTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TouchHandlerTypes.h; sourceTree = "<group>"; }; | ||
1060 | + B891A2992BCD1392006CB06E /* GameConfigParser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GameConfigParser.cpp; sourceTree = "<group>"; }; | ||
1061 | + B891A29A2BCD1392006CB06E /* GameConfigParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GameConfigParser.h; sourceTree = "<group>"; }; | ||
1062 | + B891A29C2BCD1392006CB06E /* LayoutObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LayoutObject.cpp; sourceTree = "<group>"; }; | ||
1063 | + B891A29D2BCD1392006CB06E /* LayoutObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LayoutObject.h; sourceTree = "<group>"; }; | ||
1064 | + B891A29E2BCD1392006CB06E /* LayoutParser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LayoutParser.cpp; sourceTree = "<group>"; }; | ||
1065 | + B891A29F2BCD1392006CB06E /* LayoutParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LayoutParser.h; sourceTree = "<group>"; }; | ||
1066 | + B891A2A12BCD1392006CB06E /* ActionData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ActionData.cpp; sourceTree = "<group>"; }; | ||
1067 | + B891A2A22BCD1392006CB06E /* ActionData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActionData.h; sourceTree = "<group>"; }; | ||
1068 | + B891A2AD2BCD1392006CB06E /* ScenarioObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScenarioObject.h; sourceTree = "<group>"; }; | ||
1069 | + B891A2B02BCD1392006CB06E /* SimpleValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleValue.h; sourceTree = "<group>"; }; | ||
1070 | + B891A2B12BCD1392006CB06E /* TimeIndicatorInterface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TimeIndicatorInterface.h; sourceTree = "<group>"; }; | ||
1071 | + B891A2B52BCD1392006CB06E /* JSONParseUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSONParseUtils.cpp; sourceTree = "<group>"; }; | ||
1072 | + B891A2B62BCD1392006CB06E /* JSONParseUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSONParseUtils.h; sourceTree = "<group>"; }; | ||
1073 | + B891A2B72BCD1392006CB06E /* SimpleValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleValue.h; sourceTree = "<group>"; }; | ||
1074 | + B891A2B82BCD1392006CB06E /* StaticActionParser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StaticActionParser.cpp; sourceTree = "<group>"; }; | ||
1075 | + B891A2B92BCD1392006CB06E /* StaticActionParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StaticActionParser.h; sourceTree = "<group>"; }; | ||
1076 | + B891A2BA2BCD1392006CB06E /* ValueStorage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ValueStorage.cpp; sourceTree = "<group>"; }; | ||
1077 | + B891A2BB2BCD1392006CB06E /* ValueStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ValueStorage.h; sourceTree = "<group>"; }; | ||
1078 | + B891A2BD2BCD1392006CB06E /* SubGameScene.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SubGameScene.cpp; sourceTree = "<group>"; }; | ||
1079 | + B891A2BE2BCD1392006CB06E /* SubGameScene.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SubGameScene.h; sourceTree = "<group>"; }; | ||
1080 | + B891A2BF2BCD1392006CB06E /* SubGameSceneShoot.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SubGameSceneShoot.cpp; sourceTree = "<group>"; }; | ||
1081 | + B891A2C02BCD1392006CB06E /* SubGameSceneShoot.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SubGameSceneShoot.h; sourceTree = "<group>"; }; | ||
1082 | + B891A2C42BCD1392006CB06E /* ParentScene.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ParentScene.cpp; sourceTree = "<group>"; }; | ||
1083 | + B891A2C52BCD1392006CB06E /* ParentScene.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ParentScene.h; sourceTree = "<group>"; }; | ||
1084 | + B891A2C62BCD1392006CB06E /* SceneWithUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SceneWithUtils.cpp; sourceTree = "<group>"; }; | ||
1085 | + B891A2C72BCD1392006CB06E /* SceneWithUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SceneWithUtils.h; sourceTree = "<group>"; }; | ||
1086 | + B891A2C92BCD1392006CB06E /* DrawingUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DrawingUtils.cpp; sourceTree = "<group>"; }; | ||
1087 | + B891A2CA2BCD1392006CB06E /* DrawingUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DrawingUtils.h; sourceTree = "<group>"; }; | ||
1088 | + B891A2CB2BCD1392006CB06E /* GeometryUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GeometryUtils.cpp; sourceTree = "<group>"; }; | ||
1089 | + B891A2CC2BCD1392006CB06E /* GeometryUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GeometryUtils.h; sourceTree = "<group>"; }; | ||
1090 | + B891A2CD2BCD1392006CB06E /* MathUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MathUtils.cpp; sourceTree = "<group>"; }; | ||
1091 | + B891A2CE2BCD1392006CB06E /* MathUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MathUtils.h; sourceTree = "<group>"; }; | ||
1092 | + B891A2CF2BCD1392006CB06E /* MiscUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MiscUtils.cpp; sourceTree = "<group>"; }; | ||
1093 | + B891A2D02BCD1392006CB06E /* MiscUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MiscUtils.h; sourceTree = "<group>"; }; | ||
1094 | + B891A2D12BCD1392006CB06E /* ResourceUtilities.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ResourceUtilities.cpp; sourceTree = "<group>"; }; | ||
1095 | + B891A2D22BCD1392006CB06E /* ResourceUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ResourceUtilities.h; sourceTree = "<group>"; }; | ||
1096 | + B891A2D32BCD1392006CB06E /* ScalingUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ScalingUtils.cpp; sourceTree = "<group>"; }; | ||
1097 | + B891A2D42BCD1392006CB06E /* ScalingUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScalingUtils.h; sourceTree = "<group>"; }; | ||
1098 | + B891A2D52BCD1392006CB06E /* SoundsRepo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SoundsRepo.cpp; sourceTree = "<group>"; }; | ||
1099 | + B891A2D62BCD1392006CB06E /* SoundsRepo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SoundsRepo.h; sourceTree = "<group>"; }; | ||
1100 | + B891A2D72BCD1392006CB06E /* SoundUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SoundUtils.cpp; sourceTree = "<group>"; }; | ||
1101 | + B891A2D82BCD1392006CB06E /* SoundUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SoundUtils.h; sourceTree = "<group>"; }; | ||
1102 | + B891A2D92BCD1392006CB06E /* StringUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StringUtils.cpp; sourceTree = "<group>"; }; | ||
1103 | + B891A2DA2BCD1392006CB06E /* StringUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StringUtils.h; sourceTree = "<group>"; }; | ||
1104 | + B891A3162BCD13AB006CB06E /* ComicSansMSBold.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = ComicSansMSBold.ttf; sourceTree = "<group>"; }; | ||
1105 | + B891A3172BCD13AB006CB06E /* ComicSansMSRegular.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = ComicSansMSRegular.ttf; sourceTree = "<group>"; }; | ||
1106 | + B891A3192BCD13AB006CB06E /* gconfig.gcf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = gconfig.gcf; sourceTree = "<group>"; }; | ||
1107 | + B891A31C2BCD13AB006CB06E /* all_in_trolley.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = all_in_trolley.mp3; sourceTree = "<group>"; }; | ||
1108 | + B891A31D2BCD13AB006CB06E /* apple.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = apple.mp3; sourceTree = "<group>"; }; | ||
1109 | + B891A31E2BCD13AB006CB06E /* banana.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = banana.mp3; sourceTree = "<group>"; }; | ||
1110 | + B891A31F2BCD13AB006CB06E /* cake.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = cake.mp3; sourceTree = "<group>"; }; | ||
1111 | + B891A3202BCD13AB006CB06E /* chocolate.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = chocolate.mp3; sourceTree = "<group>"; }; | ||
1112 | + B891A3212BCD13AB006CB06E /* cucumber.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = cucumber.mp3; sourceTree = "<group>"; }; | ||
1113 | + B891A3222BCD13AB006CB06E /* donut.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = donut.mp3; sourceTree = "<group>"; }; | ||
1114 | + B891A3232BCD13AB006CB06E /* effect_catapult.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = effect_catapult.mp3; sourceTree = "<group>"; }; | ||
1115 | + B891A3242BCD13AB006CB06E /* effect_hit.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = effect_hit.mp3; sourceTree = "<group>"; }; | ||
1116 | + B891A3252BCD13AB006CB06E /* effect_in_trolley.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = effect_in_trolley.mp3; sourceTree = "<group>"; }; | ||
1117 | + B891A3262BCD13AB006CB06E /* hit_maggie.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = hit_maggie.mp3; sourceTree = "<group>"; }; | ||
1118 | + B891A3272BCD13AB006CB06E /* hit_steve.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = hit_steve.mp3; sourceTree = "<group>"; }; | ||
1119 | + B891A3282BCD13AB006CB06E /* icecream.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = icecream.mp3; sourceTree = "<group>"; }; | ||
1120 | + B891A3292BCD13AB006CB06E /* in_trolley.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = in_trolley.mp3; sourceTree = "<group>"; }; | ||
1121 | + B891A32A2BCD13AB006CB06E /* not_apple.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = not_apple.mp3; sourceTree = "<group>"; }; | ||
1122 | + B891A32B2BCD13AB006CB06E /* not_banana.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = not_banana.mp3; sourceTree = "<group>"; }; | ||
1123 | + B891A32C2BCD13AB006CB06E /* not_cake.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = not_cake.mp3; sourceTree = "<group>"; }; | ||
1124 | + B891A32D2BCD13AB006CB06E /* not_chocolate.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = not_chocolate.mp3; sourceTree = "<group>"; }; | ||
1125 | + B891A32E2BCD13AB006CB06E /* not_cucumber.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = not_cucumber.mp3; sourceTree = "<group>"; }; | ||
1126 | + B891A32F2BCD13AB006CB06E /* not_donut.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = not_donut.mp3; sourceTree = "<group>"; }; | ||
1127 | + B891A3302BCD13AB006CB06E /* not_icecream.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = not_icecream.mp3; sourceTree = "<group>"; }; | ||
1128 | + B891A3312BCD13AB006CB06E /* not_in_trolley.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = not_in_trolley.mp3; sourceTree = "<group>"; }; | ||
1129 | + B891A3322BCD13AB006CB06E /* not_tomato.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = not_tomato.mp3; sourceTree = "<group>"; }; | ||
1130 | + B891A3332BCD13AB006CB06E /* put_it_trolley.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = put_it_trolley.mp3; sourceTree = "<group>"; }; | ||
1131 | + B891A3342BCD13AB006CB06E /* shop_closed.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = shop_closed.mp3; sourceTree = "<group>"; }; | ||
1132 | + B891A3352BCD13AB006CB06E /* start.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = start.mp3; sourceTree = "<group>"; }; | ||
1133 | + B891A3362BCD13AB006CB06E /* tomato.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = tomato.mp3; sourceTree = "<group>"; }; | ||
1134 | + B891A3372BCD13AB006CB06E /* wrong_3_times.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = wrong_3_times.mp3; sourceTree = "<group>"; }; | ||
1135 | + B891A3392BCD13AB006CB06E /* g_no.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = g_no.mp3; sourceTree = "<group>"; }; | ||
1136 | + B891A33A2BCD13AB006CB06E /* g_oops.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = g_oops.mp3; sourceTree = "<group>"; }; | ||
1137 | + B891A33B2BCD13AB006CB06E /* g_uh_oh.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = g_uh_oh.mp3; sourceTree = "<group>"; }; | ||
1138 | + B891A33C2BCD13AB006CB06E /* g_well_done.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = g_well_done.mp3; sourceTree = "<group>"; }; | ||
1139 | + B891A33D2BCD13AB006CB06E /* g_whoo_hoo.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = g_whoo_hoo.mp3; sourceTree = "<group>"; }; | ||
1140 | + B891A33E2BCD13AB006CB06E /* g_yeah.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = g_yeah.mp3; sourceTree = "<group>"; }; | ||
1141 | + B891A33F2BCD13AB006CB06E /* maggie_super.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = maggie_super.mp3; sourceTree = "<group>"; }; | ||
1142 | + B891A3402BCD13AB006CB06E /* maggie_thats_right.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = maggie_thats_right.mp3; sourceTree = "<group>"; }; | ||
1143 | + B891A3412BCD13AB006CB06E /* maggie_yeah.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = maggie_yeah.mp3; sourceTree = "<group>"; }; | ||
1144 | + B891A3432BCD13AB006CB06E /* g_pick_level.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = g_pick_level.mp3; sourceTree = "<group>"; }; | ||
1145 | + B891A3472BCD13AB006CB06E /* app_link_halloween.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = app_link_halloween.png; sourceTree = "<group>"; }; | ||
1146 | + B891A3482BCD13AB006CB06E /* app_link_toy.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = app_link_toy.png; sourceTree = "<group>"; }; | ||
1147 | + B891A3492BCD13AB006CB06E /* doll_toy_app.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = doll_toy_app.png; sourceTree = "<group>"; }; | ||
1148 | + B891A34A2BCD13AB006CB06E /* halo_icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = halo_icon.png; sourceTree = "<group>"; }; | ||
1149 | + B891A34B2BCD13AB006CB06E /* steve_maggie.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = steve_maggie.png; sourceTree = "<group>"; }; | ||
1150 | + B891A34C2BCD13AB006CB06E /* witch_halloween_app.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = witch_halloween_app.png; sourceTree = "<group>"; }; | ||
1151 | + B891A34E2BCD13AB006CB06E /* button_back.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_back.png; sourceTree = "<group>"; }; | ||
1152 | + B891A34F2BCD13AB006CB06E /* button_go.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_go.png; sourceTree = "<group>"; }; | ||
1153 | + B891A3502BCD13AB006CB06E /* button_green.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_green.png; sourceTree = "<group>"; }; | ||
1154 | + B891A3512BCD13AB006CB06E /* button_grey.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_grey.png; sourceTree = "<group>"; }; | ||
1155 | + B891A3522BCD13AB006CB06E /* button_orange.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_orange.png; sourceTree = "<group>"; }; | ||
1156 | + B891A3532BCD13AB006CB06E /* button_pause.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_pause.png; sourceTree = "<group>"; }; | ||
1157 | + B891A3542BCD13AB006CB06E /* button_purple.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_purple.png; sourceTree = "<group>"; }; | ||
1158 | + B891A3552BCD13AB006CB06E /* button_red.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_red.png; sourceTree = "<group>"; }; | ||
1159 | + B891A3562BCD13AB006CB06E /* button_repeat.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_repeat.png; sourceTree = "<group>"; }; | ||
1160 | + B891A3572BCD13AB006CB06E /* button_setting.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_setting.png; sourceTree = "<group>"; }; | ||
1161 | + B891A3582BCD13AB006CB06E /* button_sound_off.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_sound_off.png; sourceTree = "<group>"; }; | ||
1162 | + B891A3592BCD13AB006CB06E /* button_sound_on.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_sound_on.png; sourceTree = "<group>"; }; | ||
1163 | + B891A35A2BCD13AB006CB06E /* button_turquoise.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_turquoise.png; sourceTree = "<group>"; }; | ||
1164 | + B891A35B2BCD13AB006CB06E /* button_yellow.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_yellow.png; sourceTree = "<group>"; }; | ||
1165 | + B891A35C2BCD13AB006CB06E /* buttonff.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = buttonff.png; sourceTree = "<group>"; }; | ||
1166 | + B891A35D2BCD13AB006CB06E /* dark_green.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = dark_green.png; sourceTree = "<group>"; }; | ||
1167 | + B891A35F2BCD13AB006CB06E /* horizontalButtonPanelBackFFPause.obl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = horizontalButtonPanelBackFFPause.obl; sourceTree = "<group>"; }; | ||
1168 | + B891A3612BCD13AB006CB06E /* level_1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = level_1.png; sourceTree = "<group>"; }; | ||
1169 | + B891A3622BCD13AB006CB06E /* level_2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = level_2.png; sourceTree = "<group>"; }; | ||
1170 | + B891A3632BCD13AB006CB06E /* level_3.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = level_3.png; sourceTree = "<group>"; }; | ||
1171 | + B891A3652BCD13AB006CB06E /* apples.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = apples.png; sourceTree = "<group>"; }; | ||
1172 | + B891A3662BCD13AB006CB06E /* baguettes.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = baguettes.png; sourceTree = "<group>"; }; | ||
1173 | + B891A3672BCD13AB006CB06E /* bananas.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = bananas.png; sourceTree = "<group>"; }; | ||
1174 | + B891A3682BCD13AB006CB06E /* cakes.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cakes.png; sourceTree = "<group>"; }; | ||
1175 | + B891A3692BCD13AB006CB06E /* chocolate.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = chocolate.png; sourceTree = "<group>"; }; | ||
1176 | + B891A36A2BCD13AB006CB06E /* cucumbers.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cucumbers.png; sourceTree = "<group>"; }; | ||
1177 | + B891A36B2BCD13AB006CB06E /* donuts.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = donuts.png; sourceTree = "<group>"; }; | ||
1178 | + B891A36C2BCD13AB006CB06E /* icecream.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icecream.png; sourceTree = "<group>"; }; | ||
1179 | + B891A36D2BCD13AB006CB06E /* lettuce.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = lettuce.png; sourceTree = "<group>"; }; | ||
1180 | + B891A36E2BCD13AB006CB06E /* milk.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = milk.png; sourceTree = "<group>"; }; | ||
1181 | + B891A36F2BCD13AB006CB06E /* orange.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = orange.png; sourceTree = "<group>"; }; | ||
1182 | + B891A3702BCD13AB006CB06E /* tomatoes.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tomatoes.png; sourceTree = "<group>"; }; | ||
1183 | + B891A3722BCD13AB006CB06E /* apple_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = apple_splodge.png; sourceTree = "<group>"; }; | ||
1184 | + B891A3732BCD13AB006CB06E /* apple1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = apple1.png; sourceTree = "<group>"; }; | ||
1185 | + B891A3742BCD13AB006CB06E /* apple2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = apple2.png; sourceTree = "<group>"; }; | ||
1186 | + B891A3752BCD13AB006CB06E /* baguette.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = baguette.png; sourceTree = "<group>"; }; | ||
1187 | + B891A3762BCD13AB006CB06E /* banana_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = banana_splodge.png; sourceTree = "<group>"; }; | ||
1188 | + B891A3772BCD13AB006CB06E /* banana1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = banana1.png; sourceTree = "<group>"; }; | ||
1189 | + B891A3782BCD13AB006CB06E /* banana2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = banana2.png; sourceTree = "<group>"; }; | ||
1190 | + B891A3792BCD13AB006CB06E /* cake_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cake_splodge.png; sourceTree = "<group>"; }; | ||
1191 | + B891A37A2BCD13AB006CB06E /* cake1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cake1.png; sourceTree = "<group>"; }; | ||
1192 | + B891A37B2BCD13AB006CB06E /* cake2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cake2.png; sourceTree = "<group>"; }; | ||
1193 | + B891A37C2BCD13AB006CB06E /* chocolate_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = chocolate_splodge.png; sourceTree = "<group>"; }; | ||
1194 | + B891A37D2BCD13AB006CB06E /* chocolate1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = chocolate1.png; sourceTree = "<group>"; }; | ||
1195 | + B891A37E2BCD13AB006CB06E /* chocolate2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = chocolate2.png; sourceTree = "<group>"; }; | ||
1196 | + B891A37F2BCD13AB006CB06E /* cucumber_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cucumber_splodge.png; sourceTree = "<group>"; }; | ||
1197 | + B891A3802BCD13AB006CB06E /* cucumber1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cucumber1.png; sourceTree = "<group>"; }; | ||
1198 | + B891A3812BCD13AB006CB06E /* cucumber2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cucumber2.png; sourceTree = "<group>"; }; | ||
1199 | + B891A3822BCD13AB006CB06E /* donut_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = donut_splodge.png; sourceTree = "<group>"; }; | ||
1200 | + B891A3832BCD13AB006CB06E /* donut1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = donut1.png; sourceTree = "<group>"; }; | ||
1201 | + B891A3842BCD13AB006CB06E /* donut2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = donut2.png; sourceTree = "<group>"; }; | ||
1202 | + B891A3852BCD13AB006CB06E /* icecream_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icecream_splodge.png; sourceTree = "<group>"; }; | ||
1203 | + B891A3862BCD13AB006CB06E /* icecream1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icecream1.png; sourceTree = "<group>"; }; | ||
1204 | + B891A3872BCD13AB006CB06E /* icecream2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icecream2.png; sourceTree = "<group>"; }; | ||
1205 | + B891A3882BCD13AB006CB06E /* lettuce.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = lettuce.png; sourceTree = "<group>"; }; | ||
1206 | + B891A3892BCD13AB006CB06E /* milk.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = milk.png; sourceTree = "<group>"; }; | ||
1207 | + B891A38A2BCD13AB006CB06E /* orange.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = orange.png; sourceTree = "<group>"; }; | ||
1208 | + B891A38B2BCD13AB006CB06E /* tomato_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tomato_splodge.png; sourceTree = "<group>"; }; | ||
1209 | + B891A38C2BCD13AB006CB06E /* tomato1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tomato1.png; sourceTree = "<group>"; }; | ||
1210 | + B891A38D2BCD13AB006CB06E /* tomato2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tomato2.png; sourceTree = "<group>"; }; | ||
1211 | + B891A38F2BCD13AB006CB06E /* cart_back1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cart_back1.png; sourceTree = "<group>"; }; | ||
1212 | + B891A3902BCD13AB006CB06E /* cart_back2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cart_back2.png; sourceTree = "<group>"; }; | ||
1213 | + B891A3912BCD13AB006CB06E /* cart_front.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cart_front.png; sourceTree = "<group>"; }; | ||
1214 | + B891A3922BCD13AB006CB06E /* clock.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = clock.png; sourceTree = "<group>"; }; | ||
1215 | + B891A3932BCD13AB006CB06E /* food_in_cart.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = food_in_cart.png; sourceTree = "<group>"; }; | ||
1216 | + B891A3942BCD13AB006CB06E /* gum.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = gum.png; sourceTree = "<group>"; }; | ||
1217 | + B891A3952BCD13AB006CB06E /* hand_leather.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = hand_leather.png; sourceTree = "<group>"; }; | ||
1218 | + B891A3962BCD13AB006CB06E /* hand_sling.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = hand_sling.png; sourceTree = "<group>"; }; | ||
1219 | + B891A3972BCD13AB006CB06E /* sling.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = sling.png; sourceTree = "<group>"; }; | ||
1220 | + B891A3982BCD13AB006CB06E /* steve_head1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = steve_head1.png; sourceTree = "<group>"; }; | ||
1221 | + B891A3992BCD13AB006CB06E /* steve_head2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = steve_head2.png; sourceTree = "<group>"; }; | ||
1222 | + B891A39A2BCD13AB006CB06E /* steve_head3.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = steve_head3.png; sourceTree = "<group>"; }; | ||
1223 | + B891A39B2BCD13AB006CB06E /* steve_head4.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = steve_head4.png; sourceTree = "<group>"; }; | ||
1224 | + B891A39C2BCD13AB006CB06E /* steve_head5.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = steve_head5.png; sourceTree = "<group>"; }; | ||
1225 | + B891A39D2BCD13AB006CB06E /* wooden_shelf.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = wooden_shelf.png; sourceTree = "<group>"; }; | ||
1226 | + B891A39F2BCD13AB006CB06E /* scene_layout.scl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = scene_layout.scl; sourceTree = "<group>"; }; | ||
1227 | + B891A3A12BCD13AB006CB06E /* accept_button.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = accept_button.png; sourceTree = "<group>"; }; | ||
1228 | + B891A3A22BCD13AB006CB06E /* accept_popup.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = accept_popup.png; sourceTree = "<group>"; }; | ||
1229 | + B891A3A42BCD13AB006CB06E /* g_finger.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = g_finger.png; sourceTree = "<group>"; }; | ||
1230 | + B891A3A52BCD13AB006CB06E /* g_life_indicator_dead.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = g_life_indicator_dead.png; sourceTree = "<group>"; }; | ||
1231 | + B891A3A62BCD13AB006CB06E /* g_life_indicator_ok.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = g_life_indicator_ok.png; sourceTree = "<group>"; }; | ||
1232 | + B891A3A72BCD13AB006CB06E /* level_halo.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = level_halo.png; sourceTree = "<group>"; }; | ||
1233 | + B891A3AA2BCD13AB006CB06E /* app_link_halloween.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = app_link_halloween.png; sourceTree = "<group>"; }; | ||
1234 | + B891A3AB2BCD13AB006CB06E /* app_link_toy.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = app_link_toy.png; sourceTree = "<group>"; }; | ||
1235 | + B891A3AC2BCD13AB006CB06E /* doll_toy_app.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = doll_toy_app.png; sourceTree = "<group>"; }; | ||
1236 | + B891A3AD2BCD13AB006CB06E /* halo_icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = halo_icon.png; sourceTree = "<group>"; }; | ||
1237 | + B891A3AE2BCD13AB006CB06E /* steve_maggie.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = steve_maggie.png; sourceTree = "<group>"; }; | ||
1238 | + B891A3AF2BCD13AB006CB06E /* witch_halloween_app.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = witch_halloween_app.png; sourceTree = "<group>"; }; | ||
1239 | + B891A3B12BCD13AB006CB06E /* button_back.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_back.png; sourceTree = "<group>"; }; | ||
1240 | + B891A3B22BCD13AB006CB06E /* button_go.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_go.png; sourceTree = "<group>"; }; | ||
1241 | + B891A3B32BCD13AB006CB06E /* button_green.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_green.png; sourceTree = "<group>"; }; | ||
1242 | + B891A3B42BCD13AB006CB06E /* button_grey.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_grey.png; sourceTree = "<group>"; }; | ||
1243 | + B891A3B52BCD13AB006CB06E /* button_orange.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_orange.png; sourceTree = "<group>"; }; | ||
1244 | + B891A3B62BCD13AB006CB06E /* button_pause.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_pause.png; sourceTree = "<group>"; }; | ||
1245 | + B891A3B72BCD13AB006CB06E /* button_purple.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_purple.png; sourceTree = "<group>"; }; | ||
1246 | + B891A3B82BCD13AB006CB06E /* button_red.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_red.png; sourceTree = "<group>"; }; | ||
1247 | + B891A3B92BCD13AB006CB06E /* button_repeat.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_repeat.png; sourceTree = "<group>"; }; | ||
1248 | + B891A3BA2BCD13AB006CB06E /* button_setting.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_setting.png; sourceTree = "<group>"; }; | ||
1249 | + B891A3BB2BCD13AB006CB06E /* button_sound_off.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_sound_off.png; sourceTree = "<group>"; }; | ||
1250 | + B891A3BC2BCD13AB006CB06E /* button_sound_on.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_sound_on.png; sourceTree = "<group>"; }; | ||
1251 | + B891A3BD2BCD13AB006CB06E /* button_turquoise.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_turquoise.png; sourceTree = "<group>"; }; | ||
1252 | + B891A3BE2BCD13AB006CB06E /* button_yellow.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_yellow.png; sourceTree = "<group>"; }; | ||
1253 | + B891A3BF2BCD13AB006CB06E /* buttonff.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = buttonff.png; sourceTree = "<group>"; }; | ||
1254 | + B891A3C02BCD13AB006CB06E /* dark_green.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = dark_green.png; sourceTree = "<group>"; }; | ||
1255 | + B891A3C22BCD13AB006CB06E /* horizontalButtonPanelBackFFPause.obl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = horizontalButtonPanelBackFFPause.obl; sourceTree = "<group>"; }; | ||
1256 | + B891A3C42BCD13AB006CB06E /* level_1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = level_1.png; sourceTree = "<group>"; }; | ||
1257 | + B891A3C52BCD13AB006CB06E /* level_2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = level_2.png; sourceTree = "<group>"; }; | ||
1258 | + B891A3C62BCD13AB006CB06E /* level_3.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = level_3.png; sourceTree = "<group>"; }; | ||
1259 | + B891A3C82BCD13AB006CB06E /* apples.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = apples.png; sourceTree = "<group>"; }; | ||
1260 | + B891A3C92BCD13AB006CB06E /* baguettes.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = baguettes.png; sourceTree = "<group>"; }; | ||
1261 | + B891A3CA2BCD13AB006CB06E /* bananas.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = bananas.png; sourceTree = "<group>"; }; | ||
1262 | + B891A3CB2BCD13AB006CB06E /* cakes.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cakes.png; sourceTree = "<group>"; }; | ||
1263 | + B891A3CC2BCD13AB006CB06E /* chocolate.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = chocolate.png; sourceTree = "<group>"; }; | ||
1264 | + B891A3CD2BCD13AB006CB06E /* cucumbers.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cucumbers.png; sourceTree = "<group>"; }; | ||
1265 | + B891A3CE2BCD13AB006CB06E /* donuts.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = donuts.png; sourceTree = "<group>"; }; | ||
1266 | + B891A3CF2BCD13AB006CB06E /* icecream.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icecream.png; sourceTree = "<group>"; }; | ||
1267 | + B891A3D02BCD13AB006CB06E /* lettuce.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = lettuce.png; sourceTree = "<group>"; }; | ||
1268 | + B891A3D12BCD13AB006CB06E /* milk.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = milk.png; sourceTree = "<group>"; }; | ||
1269 | + B891A3D22BCD13AB006CB06E /* orange.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = orange.png; sourceTree = "<group>"; }; | ||
1270 | + B891A3D32BCD13AB006CB06E /* tomatoes.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tomatoes.png; sourceTree = "<group>"; }; | ||
1271 | + B891A3D52BCD13AB006CB06E /* apple_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = apple_splodge.png; sourceTree = "<group>"; }; | ||
1272 | + B891A3D62BCD13AB006CB06E /* apple1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = apple1.png; sourceTree = "<group>"; }; | ||
1273 | + B891A3D72BCD13AB006CB06E /* apple2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = apple2.png; sourceTree = "<group>"; }; | ||
1274 | + B891A3D82BCD13AB006CB06E /* baguette.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = baguette.png; sourceTree = "<group>"; }; | ||
1275 | + B891A3D92BCD13AB006CB06E /* banana_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = banana_splodge.png; sourceTree = "<group>"; }; | ||
1276 | + B891A3DA2BCD13AB006CB06E /* banana1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = banana1.png; sourceTree = "<group>"; }; | ||
1277 | + B891A3DB2BCD13AB006CB06E /* banana2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = banana2.png; sourceTree = "<group>"; }; | ||
1278 | + B891A3DC2BCD13AB006CB06E /* cake_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cake_splodge.png; sourceTree = "<group>"; }; | ||
1279 | + B891A3DD2BCD13AB006CB06E /* cake1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cake1.png; sourceTree = "<group>"; }; | ||
1280 | + B891A3DE2BCD13AB006CB06E /* cake2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cake2.png; sourceTree = "<group>"; }; | ||
1281 | + B891A3DF2BCD13AB006CB06E /* chocolate_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = chocolate_splodge.png; sourceTree = "<group>"; }; | ||
1282 | + B891A3E02BCD13AB006CB06E /* chocolate1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = chocolate1.png; sourceTree = "<group>"; }; | ||
1283 | + B891A3E12BCD13AB006CB06E /* chocolate2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = chocolate2.png; sourceTree = "<group>"; }; | ||
1284 | + B891A3E22BCD13AB006CB06E /* cucumber_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cucumber_splodge.png; sourceTree = "<group>"; }; | ||
1285 | + B891A3E32BCD13AB006CB06E /* cucumber1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cucumber1.png; sourceTree = "<group>"; }; | ||
1286 | + B891A3E42BCD13AB006CB06E /* cucumber2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cucumber2.png; sourceTree = "<group>"; }; | ||
1287 | + B891A3E52BCD13AB006CB06E /* donut_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = donut_splodge.png; sourceTree = "<group>"; }; | ||
1288 | + B891A3E62BCD13AB006CB06E /* donut1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = donut1.png; sourceTree = "<group>"; }; | ||
1289 | + B891A3E72BCD13AB006CB06E /* donut2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = donut2.png; sourceTree = "<group>"; }; | ||
1290 | + B891A3E82BCD13AB006CB06E /* icecream_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icecream_splodge.png; sourceTree = "<group>"; }; | ||
1291 | + B891A3E92BCD13AB006CB06E /* icecream1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icecream1.png; sourceTree = "<group>"; }; | ||
1292 | + B891A3EA2BCD13AB006CB06E /* icecream2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icecream2.png; sourceTree = "<group>"; }; | ||
1293 | + B891A3EB2BCD13AB006CB06E /* lettuce.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = lettuce.png; sourceTree = "<group>"; }; | ||
1294 | + B891A3EC2BCD13AB006CB06E /* milk.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = milk.png; sourceTree = "<group>"; }; | ||
1295 | + B891A3ED2BCD13AB006CB06E /* orange.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = orange.png; sourceTree = "<group>"; }; | ||
1296 | + B891A3EE2BCD13AB006CB06E /* tomato_splodge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tomato_splodge.png; sourceTree = "<group>"; }; | ||
1297 | + B891A3EF2BCD13AB006CB06E /* tomato1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tomato1.png; sourceTree = "<group>"; }; | ||
1298 | + B891A3F02BCD13AB006CB06E /* tomato2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tomato2.png; sourceTree = "<group>"; }; | ||
1299 | + B891A3F22BCD13AB006CB06E /* background.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = background.png; sourceTree = "<group>"; }; | ||
1300 | + B891A3F32BCD13AB006CB06E /* cart_back1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cart_back1.png; sourceTree = "<group>"; }; | ||
1301 | + B891A3F42BCD13AB006CB06E /* cart_back2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cart_back2.png; sourceTree = "<group>"; }; | ||
1302 | + B891A3F52BCD13AB006CB06E /* cart_front.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cart_front.png; sourceTree = "<group>"; }; | ||
1303 | + B891A3F62BCD13AB006CB06E /* clock.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = clock.png; sourceTree = "<group>"; }; | ||
1304 | + B891A3F72BCD13AB006CB06E /* food_in_cart.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = food_in_cart.png; sourceTree = "<group>"; }; | ||
1305 | + B891A3F82BCD13AB006CB06E /* gum.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = gum.png; sourceTree = "<group>"; }; | ||
1306 | + B891A3F92BCD13AB006CB06E /* hand_leather.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = hand_leather.png; sourceTree = "<group>"; }; | ||
1307 | + B891A3FA2BCD13AB006CB06E /* hand_sling.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = hand_sling.png; sourceTree = "<group>"; }; | ||
1308 | + B891A3FB2BCD13AB006CB06E /* sling.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = sling.png; sourceTree = "<group>"; }; | ||
1309 | + B891A3FC2BCD13AB006CB06E /* steve_head1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = steve_head1.png; sourceTree = "<group>"; }; | ||
1310 | + B891A3FD2BCD13AB006CB06E /* steve_head2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = steve_head2.png; sourceTree = "<group>"; }; | ||
1311 | + B891A3FE2BCD13AB006CB06E /* steve_head3.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = steve_head3.png; sourceTree = "<group>"; }; | ||
1312 | + B891A3FF2BCD13AB006CB06E /* steve_head4.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = steve_head4.png; sourceTree = "<group>"; }; | ||
1313 | + B891A4002BCD13AB006CB06E /* steve_head5.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = steve_head5.png; sourceTree = "<group>"; }; | ||
1314 | + B891A4012BCD13AB006CB06E /* well_done_pic.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = well_done_pic.png; sourceTree = "<group>"; }; | ||
1315 | + B891A4022BCD13AB006CB06E /* wooden_shelf.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = wooden_shelf.png; sourceTree = "<group>"; }; | ||
1316 | + B891A4042BCD13AB006CB06E /* scene_layout.scl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = scene_layout.scl; sourceTree = "<group>"; }; | ||
1317 | + B891A4062BCD13AB006CB06E /* accept_button.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = accept_button.png; sourceTree = "<group>"; }; | ||
1318 | + B891A4072BCD13AB006CB06E /* accept_popup.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = accept_popup.png; sourceTree = "<group>"; }; | ||
1319 | + B891A4092BCD13AB006CB06E /* g_finger.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = g_finger.png; sourceTree = "<group>"; }; | ||
1320 | + B891A40A2BCD13AB006CB06E /* g_life_indicator_dead.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = g_life_indicator_dead.png; sourceTree = "<group>"; }; | ||
1321 | + B891A40B2BCD13AB006CB06E /* g_life_indicator_ok.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = g_life_indicator_ok.png; sourceTree = "<group>"; }; | ||
1322 | + B891A40C2BCD13AB006CB06E /* level_halo.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = level_halo.png; sourceTree = "<group>"; }; | ||
1323 | + B891A40F2BCD13AB006CB06E /* .gitkeep */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = .gitkeep; sourceTree = "<group>"; }; | ||
1324 | + D63F3847140160A2204489BA /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = "<group>"; }; | ||
1325 | + D8C046A1A9C279FDBB5C174E /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = "<group>"; }; | ||
1326 | + F04D1DAE6591EAD461CBBE9A /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; }; | ||
1327 | +/* End PBXFileReference section */ | ||
1328 | + | ||
1329 | +/* Begin PBXFrameworksBuildPhase section */ | ||
1330 | + 97C146EB1CF9000F007C117D /* Frameworks */ = { | ||
1331 | + isa = PBXFrameworksBuildPhase; | ||
1332 | + buildActionMask = 2147483647; | ||
1333 | + files = ( | ||
1334 | + FB8AFCB0A8C34B5508A68F45 /* Pods_Runner.framework in Frameworks */, | ||
1335 | + ); | ||
1336 | + runOnlyForDeploymentPostprocessing = 0; | ||
1337 | + }; | ||
1338 | + C23E992F6BFFE604720B1F08 /* Frameworks */ = { | ||
1339 | + isa = PBXFrameworksBuildPhase; | ||
1340 | + buildActionMask = 2147483647; | ||
1341 | + files = ( | ||
1342 | + F5FCE34FB9E028C20A7850DE /* Pods_RunnerTests.framework in Frameworks */, | ||
1343 | + ); | ||
1344 | + runOnlyForDeploymentPostprocessing = 0; | ||
1345 | + }; | ||
1346 | +/* End PBXFrameworksBuildPhase section */ | ||
1347 | + | ||
1348 | +/* Begin PBXGroup section */ | ||
1349 | + 331C8082294A63A400263BE5 /* RunnerTests */ = { | ||
1350 | + isa = PBXGroup; | ||
1351 | + children = ( | ||
1352 | + 331C807B294A618700263BE5 /* RunnerTests.swift */, | ||
1353 | + ); | ||
1354 | + path = RunnerTests; | ||
1355 | + sourceTree = "<group>"; | ||
1356 | + }; | ||
1357 | + 340CE8403EC22FE8EE1FA3EF /* Pods */ = { | ||
1358 | + isa = PBXGroup; | ||
1359 | + children = ( | ||
1360 | + F04D1DAE6591EAD461CBBE9A /* Pods-Runner.debug.xcconfig */, | ||
1361 | + 3563EC8D55A646823FD26A83 /* Pods-Runner.release.xcconfig */, | ||
1362 | + 2DE9FE013448D0821175591C /* Pods-Runner.profile.xcconfig */, | ||
1363 | + D63F3847140160A2204489BA /* Pods-RunnerTests.debug.xcconfig */, | ||
1364 | + D8C046A1A9C279FDBB5C174E /* Pods-RunnerTests.release.xcconfig */, | ||
1365 | + 48BCA0827DCB98991774F5AC /* Pods-RunnerTests.profile.xcconfig */, | ||
1366 | + ); | ||
1367 | + path = Pods; | ||
1368 | + sourceTree = "<group>"; | ||
1369 | + }; | ||
1370 | + 9740EEB11CF90186004384FC /* Flutter */ = { | ||
1371 | + isa = PBXGroup; | ||
1372 | + children = ( | ||
1373 | + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, | ||
1374 | + 9740EEB21CF90195004384FC /* Debug.xcconfig */, | ||
1375 | + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, | ||
1376 | + 9740EEB31CF90195004384FC /* Generated.xcconfig */, | ||
1377 | + ); | ||
1378 | + name = Flutter; | ||
1379 | + sourceTree = "<group>"; | ||
1380 | + }; | ||
1381 | + 97C146E51CF9000F007C117D = { | ||
1382 | + isa = PBXGroup; | ||
1383 | + children = ( | ||
1384 | + B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */, | ||
1385 | + 9740EEB11CF90186004384FC /* Flutter */, | ||
1386 | + 97C146F01CF9000F007C117D /* Runner */, | ||
1387 | + 97C146EF1CF9000F007C117D /* Products */, | ||
1388 | + 331C8082294A63A400263BE5 /* RunnerTests */, | ||
1389 | + 340CE8403EC22FE8EE1FA3EF /* Pods */, | ||
1390 | + E653501EF99460B1BB76C5EE /* Frameworks */, | ||
1391 | + ); | ||
1392 | + sourceTree = "<group>"; | ||
1393 | + }; | ||
1394 | + 97C146EF1CF9000F007C117D /* Products */ = { | ||
1395 | + isa = PBXGroup; | ||
1396 | + children = ( | ||
1397 | + 97C146EE1CF9000F007C117D /* Runner.app */, | ||
1398 | + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, | ||
1399 | + ); | ||
1400 | + name = Products; | ||
1401 | + sourceTree = "<group>"; | ||
1402 | + }; | ||
1403 | + 97C146F01CF9000F007C117D /* Runner */ = { | ||
1404 | + isa = PBXGroup; | ||
1405 | + children = ( | ||
1406 | + B891A25D2BCD102C006CB06E /* Wowgame */, | ||
1407 | + 52450AF22A4ED0EC007B3E4B /* Runner.entitlements */, | ||
1408 | + 97C146FA1CF9000F007C117D /* Main.storyboard */, | ||
1409 | + 97C146FD1CF9000F007C117D /* Assets.xcassets */, | ||
1410 | + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, | ||
1411 | + 97C147021CF9000F007C117D /* Info.plist */, | ||
1412 | + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, | ||
1413 | + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, | ||
1414 | + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, | ||
1415 | + 52450AF02A4C415B007B3E4B /* XSMessageMehtodChannel.swift */, | ||
1416 | + 525E17192A4BD03900104CDF /* VoiceXSMessageChannel.swift */, | ||
1417 | + B852C1342BCABB5E00A53FC4 /* GameMessageChannel.swift */, | ||
1418 | + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, | ||
1419 | + ); | ||
1420 | + path = Runner; | ||
1421 | + sourceTree = "<group>"; | ||
1422 | + }; | ||
1423 | + B852D3EE2BCADF3600A53FC4 /* Products */ = { | ||
1424 | + isa = PBXGroup; | ||
1425 | + children = ( | ||
1426 | + B852D3FF2BCADF3700A53FC4 /* libcocos2d.a */, | ||
1427 | + B852D4012BCADF3700A53FC4 /* libext_clipper.a */, | ||
1428 | + B852D4032BCADF3700A53FC4 /* libext_convertUTF.a */, | ||
1429 | + B852D4052BCADF3700A53FC4 /* libext_edtaa3func.a */, | ||
1430 | + B852D4072BCADF3700A53FC4 /* libext_md5.a */, | ||
1431 | + B852D4092BCADF3700A53FC4 /* libext_poly2tri.a */, | ||
1432 | + B852D40B2BCADF3700A53FC4 /* libext_recast.a */, | ||
1433 | + B852D40D2BCADF3700A53FC4 /* libext_tinyxml2.a */, | ||
1434 | + B852D40F2BCADF3700A53FC4 /* libext_unzip.a */, | ||
1435 | + B852D4112BCADF3700A53FC4 /* libext_xxhash.a */, | ||
1436 | + B852D4132BCADF3700A53FC4 /* libext_xxtea.a */, | ||
1437 | + B852D4152BCADF3700A53FC4 /* libexternal.a */, | ||
1438 | + ); | ||
1439 | + name = Products; | ||
1440 | + sourceTree = "<group>"; | ||
1441 | + }; | ||
1442 | + B891A25D2BCD102C006CB06E /* Wowgame */ = { | ||
1443 | + isa = PBXGroup; | ||
1444 | + children = ( | ||
1445 | + B891A2DF2BCD1392006CB06E /* Classes */, | ||
1446 | + B891A4112BCD13AB006CB06E /* Resources */, | ||
1447 | + ); | ||
1448 | + path = Wowgame; | ||
1449 | + sourceTree = "<group>"; | ||
1450 | + }; | ||
1451 | + B891A2642BCD1392006CB06E /* Layers */ = { | ||
1452 | + isa = PBXGroup; | ||
1453 | + children = ( | ||
1454 | + B891A2622BCD1392006CB06E /* TouchInterceptingLayer.cpp */, | ||
1455 | + B891A2632BCD1392006CB06E /* TouchInterceptingLayer.h */, | ||
1456 | + ); | ||
1457 | + path = Layers; | ||
1458 | + sourceTree = "<group>"; | ||
1459 | + }; | ||
1460 | + B891A26B2BCD1392006CB06E /* LevelPickerView */ = { | ||
1461 | + isa = PBXGroup; | ||
1462 | + children = ( | ||
1463 | + B891A2652BCD1392006CB06E /* LevelPickerLayer.cpp */, | ||
1464 | + B891A2662BCD1392006CB06E /* LevelPickerLayer.h */, | ||
1465 | + B891A2672BCD1392006CB06E /* LevelPickerView.cpp */, | ||
1466 | + B891A2682BCD1392006CB06E /* LevelPickerView.h */, | ||
1467 | + B891A2692BCD1392006CB06E /* SimpleLevelPickerView.cpp */, | ||
1468 | + B891A26A2BCD1392006CB06E /* SimpleLevelPickerView.h */, | ||
1469 | + ); | ||
1470 | + path = LevelPickerView; | ||
1471 | + sourceTree = "<group>"; | ||
1472 | + }; | ||
1473 | + B891A27C2BCD1392006CB06E /* CustomViews */ = { | ||
1474 | + isa = PBXGroup; | ||
1475 | + children = ( | ||
1476 | + B891A2642BCD1392006CB06E /* Layers */, | ||
1477 | + B891A26B2BCD1392006CB06E /* LevelPickerView */, | ||
1478 | + B891A26C2BCD1392006CB06E /* AlertView.cpp */, | ||
1479 | + B891A26D2BCD1392006CB06E /* AlertView.h */, | ||
1480 | + B891A26E2BCD1392006CB06E /* AppLinksView.cpp */, | ||
1481 | + B891A26F2BCD1392006CB06E /* AppLinksView.h */, | ||
1482 | + B891A2702BCD1392006CB06E /* GameLifeIndicatorView.cpp */, | ||
1483 | + B891A2712BCD1392006CB06E /* GameLifeIndicatorView.h */, | ||
1484 | + B891A2722BCD1392006CB06E /* LevelView.cpp */, | ||
1485 | + B891A2732BCD1392006CB06E /* LevelView.h */, | ||
1486 | + B891A2742BCD1392006CB06E /* ParentalGateShowInterface.cpp */, | ||
1487 | + B891A2752BCD1392006CB06E /* ParentalGateShowInterface.h */, | ||
1488 | + B891A2762BCD1392006CB06E /* ParentalGateView.cpp */, | ||
1489 | + B891A2772BCD1392006CB06E /* ParentalGateView.h */, | ||
1490 | + B891A2782BCD1392006CB06E /* SettingsLayer.cpp */, | ||
1491 | + B891A2792BCD1392006CB06E /* SettingsLayer.h */, | ||
1492 | + B891A27A2BCD1392006CB06E /* TOSAcceptPopupView.cpp */, | ||
1493 | + B891A27B2BCD1392006CB06E /* TOSAcceptPopupView.h */, | ||
1494 | + ); | ||
1495 | + path = CustomViews; | ||
1496 | + sourceTree = "<group>"; | ||
1497 | + }; | ||
1498 | + B891A28F2BCD1392006CB06E /* LayoutObjects */ = { | ||
1499 | + isa = PBXGroup; | ||
1500 | + children = ( | ||
1501 | + B891A27D2BCD1392006CB06E /* ChangingSprite.cpp */, | ||
1502 | + B891A27E2BCD1392006CB06E /* ChangingSprite.h */, | ||
1503 | + B891A27F2BCD1392006CB06E /* ContainerSprite.cpp */, | ||
1504 | + B891A2802BCD1392006CB06E /* ContainerSprite.h */, | ||
1505 | + B891A2812BCD1392006CB06E /* PlainLabel.cpp */, | ||
1506 | + B891A2822BCD1392006CB06E /* PlainLabel.h */, | ||
1507 | + B891A2832BCD1392006CB06E /* PlainNode.cpp */, | ||
1508 | + B891A2842BCD1392006CB06E /* PlainNode.h */, | ||
1509 | + B891A2852BCD1392006CB06E /* PlainSprite.cpp */, | ||
1510 | + B891A2862BCD1392006CB06E /* PlainSprite.h */, | ||
1511 | + B891A2872BCD1392006CB06E /* ProgressSliderNode.cpp */, | ||
1512 | + B891A2882BCD1392006CB06E /* ProgressSliderNode.h */, | ||
1513 | + B891A2892BCD1392006CB06E /* SimpleButton.cpp */, | ||
1514 | + B891A28A2BCD1392006CB06E /* SimpleButton.h */, | ||
1515 | + B891A28B2BCD1392006CB06E /* TouchableSprite.cpp */, | ||
1516 | + B891A28C2BCD1392006CB06E /* TouchableSprite.h */, | ||
1517 | + B891A28D2BCD1392006CB06E /* TwoStateButton.cpp */, | ||
1518 | + B891A28E2BCD1392006CB06E /* TwoStateButton.h */, | ||
1519 | + ); | ||
1520 | + path = LayoutObjects; | ||
1521 | + sourceTree = "<group>"; | ||
1522 | + }; | ||
1523 | + B891A2962BCD1392006CB06E /* Misc */ = { | ||
1524 | + isa = PBXGroup; | ||
1525 | + children = ( | ||
1526 | + B891A2902BCD1392006CB06E /* MiscConfig.h */, | ||
1527 | + B891A2912BCD1392006CB06E /* ResourcesConfig.cpp */, | ||
1528 | + B891A2922BCD1392006CB06E /* ResourcesConfig.h */, | ||
1529 | + B891A2932BCD1392006CB06E /* Strings.cpp */, | ||
1530 | + B891A2942BCD1392006CB06E /* Strings.h */, | ||
1531 | + B891A2952BCD1392006CB06E /* TouchHandlerTypes.h */, | ||
1532 | + ); | ||
1533 | + path = Misc; | ||
1534 | + sourceTree = "<group>"; | ||
1535 | + }; | ||
1536 | + B891A29B2BCD1392006CB06E /* GameParsing */ = { | ||
1537 | + isa = PBXGroup; | ||
1538 | + children = ( | ||
1539 | + B891A2992BCD1392006CB06E /* GameConfigParser.cpp */, | ||
1540 | + B891A29A2BCD1392006CB06E /* GameConfigParser.h */, | ||
1541 | + ); | ||
1542 | + path = GameParsing; | ||
1543 | + sourceTree = "<group>"; | ||
1544 | + }; | ||
1545 | + B891A2A02BCD1392006CB06E /* LayoutParsing */ = { | ||
1546 | + isa = PBXGroup; | ||
1547 | + children = ( | ||
1548 | + B891A29C2BCD1392006CB06E /* LayoutObject.cpp */, | ||
1549 | + B891A29D2BCD1392006CB06E /* LayoutObject.h */, | ||
1550 | + B891A29E2BCD1392006CB06E /* LayoutParser.cpp */, | ||
1551 | + B891A29F2BCD1392006CB06E /* LayoutParser.h */, | ||
1552 | + ); | ||
1553 | + path = LayoutParsing; | ||
1554 | + sourceTree = "<group>"; | ||
1555 | + }; | ||
1556 | + B891A2B42BCD1392006CB06E /* ScenarioParsing */ = { | ||
1557 | + isa = PBXGroup; | ||
1558 | + children = ( | ||
1559 | + B891A2A12BCD1392006CB06E /* ActionData.cpp */, | ||
1560 | + B891A2A22BCD1392006CB06E /* ActionData.h */, | ||
1561 | + B891A2AD2BCD1392006CB06E /* ScenarioObject.h */, | ||
1562 | + B891A2B02BCD1392006CB06E /* SimpleValue.h */, | ||
1563 | + B891A2B12BCD1392006CB06E /* TimeIndicatorInterface.h */, | ||
1564 | + ); | ||
1565 | + path = ScenarioParsing; | ||
1566 | + sourceTree = "<group>"; | ||
1567 | + }; | ||
1568 | + B891A2BC2BCD1392006CB06E /* Parsing */ = { | ||
1569 | + isa = PBXGroup; | ||
1570 | + children = ( | ||
1571 | + B891A29B2BCD1392006CB06E /* GameParsing */, | ||
1572 | + B891A2A02BCD1392006CB06E /* LayoutParsing */, | ||
1573 | + B891A2B42BCD1392006CB06E /* ScenarioParsing */, | ||
1574 | + B891A2B52BCD1392006CB06E /* JSONParseUtils.cpp */, | ||
1575 | + B891A2B62BCD1392006CB06E /* JSONParseUtils.h */, | ||
1576 | + B891A2B72BCD1392006CB06E /* SimpleValue.h */, | ||
1577 | + B891A2B82BCD1392006CB06E /* StaticActionParser.cpp */, | ||
1578 | + B891A2B92BCD1392006CB06E /* StaticActionParser.h */, | ||
1579 | + B891A2BA2BCD1392006CB06E /* ValueStorage.cpp */, | ||
1580 | + B891A2BB2BCD1392006CB06E /* ValueStorage.h */, | ||
1581 | + ); | ||
1582 | + path = Parsing; | ||
1583 | + sourceTree = "<group>"; | ||
1584 | + }; | ||
1585 | + B891A2C12BCD1392006CB06E /* SubGameScenes */ = { | ||
1586 | + isa = PBXGroup; | ||
1587 | + children = ( | ||
1588 | + B891A2BD2BCD1392006CB06E /* SubGameScene.cpp */, | ||
1589 | + B891A2BE2BCD1392006CB06E /* SubGameScene.h */, | ||
1590 | + B891A2BF2BCD1392006CB06E /* SubGameSceneShoot.cpp */, | ||
1591 | + B891A2C02BCD1392006CB06E /* SubGameSceneShoot.h */, | ||
1592 | + ); | ||
1593 | + path = SubGameScenes; | ||
1594 | + sourceTree = "<group>"; | ||
1595 | + }; | ||
1596 | + B891A2C82BCD1392006CB06E /* Scenes */ = { | ||
1597 | + isa = PBXGroup; | ||
1598 | + children = ( | ||
1599 | + B891A2C12BCD1392006CB06E /* SubGameScenes */, | ||
1600 | + B891A2C42BCD1392006CB06E /* ParentScene.cpp */, | ||
1601 | + B891A2C52BCD1392006CB06E /* ParentScene.h */, | ||
1602 | + B891A2C62BCD1392006CB06E /* SceneWithUtils.cpp */, | ||
1603 | + B891A2C72BCD1392006CB06E /* SceneWithUtils.h */, | ||
1604 | + ); | ||
1605 | + path = Scenes; | ||
1606 | + sourceTree = "<group>"; | ||
1607 | + }; | ||
1608 | + B891A2DB2BCD1392006CB06E /* Utils */ = { | ||
1609 | + isa = PBXGroup; | ||
1610 | + children = ( | ||
1611 | + B891A2C92BCD1392006CB06E /* DrawingUtils.cpp */, | ||
1612 | + B891A2CA2BCD1392006CB06E /* DrawingUtils.h */, | ||
1613 | + B891A2CB2BCD1392006CB06E /* GeometryUtils.cpp */, | ||
1614 | + B891A2CC2BCD1392006CB06E /* GeometryUtils.h */, | ||
1615 | + B891A2CD2BCD1392006CB06E /* MathUtils.cpp */, | ||
1616 | + B891A2CE2BCD1392006CB06E /* MathUtils.h */, | ||
1617 | + B891A2CF2BCD1392006CB06E /* MiscUtils.cpp */, | ||
1618 | + B891A2D02BCD1392006CB06E /* MiscUtils.h */, | ||
1619 | + B891A2D12BCD1392006CB06E /* ResourceUtilities.cpp */, | ||
1620 | + B891A2D22BCD1392006CB06E /* ResourceUtilities.h */, | ||
1621 | + B891A2D32BCD1392006CB06E /* ScalingUtils.cpp */, | ||
1622 | + B891A2D42BCD1392006CB06E /* ScalingUtils.h */, | ||
1623 | + B891A2D52BCD1392006CB06E /* SoundsRepo.cpp */, | ||
1624 | + B891A2D62BCD1392006CB06E /* SoundsRepo.h */, | ||
1625 | + B891A2D72BCD1392006CB06E /* SoundUtils.cpp */, | ||
1626 | + B891A2D82BCD1392006CB06E /* SoundUtils.h */, | ||
1627 | + B891A2D92BCD1392006CB06E /* StringUtils.cpp */, | ||
1628 | + B891A2DA2BCD1392006CB06E /* StringUtils.h */, | ||
1629 | + ); | ||
1630 | + path = Utils; | ||
1631 | + sourceTree = "<group>"; | ||
1632 | + }; | ||
1633 | + B891A2DF2BCD1392006CB06E /* Classes */ = { | ||
1634 | + isa = PBXGroup; | ||
1635 | + children = ( | ||
1636 | + B891A27C2BCD1392006CB06E /* CustomViews */, | ||
1637 | + B891A28F2BCD1392006CB06E /* LayoutObjects */, | ||
1638 | + B891A2962BCD1392006CB06E /* Misc */, | ||
1639 | + B891A2BC2BCD1392006CB06E /* Parsing */, | ||
1640 | + B891A2C82BCD1392006CB06E /* Scenes */, | ||
1641 | + B891A2DB2BCD1392006CB06E /* Utils */, | ||
1642 | + ); | ||
1643 | + path = Classes; | ||
1644 | + sourceTree = "<group>"; | ||
1645 | + }; | ||
1646 | + B891A3182BCD13AB006CB06E /* fonts */ = { | ||
1647 | + isa = PBXGroup; | ||
1648 | + children = ( | ||
1649 | + B891A3162BCD13AB006CB06E /* ComicSansMSBold.ttf */, | ||
1650 | + B891A3172BCD13AB006CB06E /* ComicSansMSRegular.ttf */, | ||
1651 | + ); | ||
1652 | + path = fonts; | ||
1653 | + sourceTree = "<group>"; | ||
1654 | + }; | ||
1655 | + B891A31A2BCD13AB006CB06E /* shoot_game */ = { | ||
1656 | + isa = PBXGroup; | ||
1657 | + children = ( | ||
1658 | + B891A3192BCD13AB006CB06E /* gconfig.gcf */, | ||
1659 | + ); | ||
1660 | + path = shoot_game; | ||
1661 | + sourceTree = "<group>"; | ||
1662 | + }; | ||
1663 | + B891A31B2BCD13AB006CB06E /* games */ = { | ||
1664 | + isa = PBXGroup; | ||
1665 | + children = ( | ||
1666 | + B891A31A2BCD13AB006CB06E /* shoot_game */, | ||
1667 | + ); | ||
1668 | + path = games; | ||
1669 | + sourceTree = "<group>"; | ||
128 | }; | 1670 | }; |
129 | -/* End PBXCopyFilesBuildPhase section */ | ||
130 | - | ||
131 | -/* Begin PBXFileReference section */ | ||
132 | - 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; }; | ||
133 | - 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; }; | ||
134 | - 2A3DBEAB6142776646A34D9C /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
135 | - 2DE9FE013448D0821175591C /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; }; | ||
136 | - 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = "<group>"; }; | ||
137 | - 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
138 | - 3563EC8D55A646823FD26A83 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; }; | ||
139 | - 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; }; | ||
140 | - 48BCA0827DCB98991774F5AC /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = "<group>"; }; | ||
141 | - 52450AF02A4C415B007B3E4B /* XSMessageMehtodChannel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XSMessageMehtodChannel.swift; sourceTree = "<group>"; }; | ||
142 | - 52450AF22A4ED0EC007B3E4B /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = "<group>"; }; | ||
143 | - 525E17192A4BD03900104CDF /* VoiceXSMessageChannel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VoiceXSMessageChannel.swift; sourceTree = "<group>"; }; | ||
144 | - 6DEBBC1D861BE053F3ECE0B9 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
145 | - 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; }; | ||
146 | - 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; | ||
147 | - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; }; | ||
148 | - 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; }; | ||
149 | - 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; }; | ||
150 | - 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
151 | - 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; }; | ||
152 | - 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; | ||
153 | - 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; | ||
154 | - 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; | ||
155 | - B852C1342BCABB5E00A53FC4 /* GameMessageChannel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GameMessageChannel.swift; sourceTree = "<group>"; }; | ||
156 | - B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = cocos2d_libs.xcodeproj; path = cocosgame/engine/cocos/core/cocos2d_libs.xcodeproj; sourceTree = "<group>"; }; | ||
157 | - D63F3847140160A2204489BA /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = "<group>"; }; | ||
158 | - D8C046A1A9C279FDBB5C174E /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = "<group>"; }; | ||
159 | - F04D1DAE6591EAD461CBBE9A /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; }; | ||
160 | -/* End PBXFileReference section */ | ||
161 | - | ||
162 | -/* Begin PBXFrameworksBuildPhase section */ | ||
163 | - 97C146EB1CF9000F007C117D /* Frameworks */ = { | ||
164 | - isa = PBXFrameworksBuildPhase; | ||
165 | - buildActionMask = 2147483647; | ||
166 | - files = ( | ||
167 | - FB8AFCB0A8C34B5508A68F45 /* Pods_Runner.framework in Frameworks */, | 1671 | + B891A3382BCD13AB006CB06E /* game_shoot */ = { |
1672 | + isa = PBXGroup; | ||
1673 | + children = ( | ||
1674 | + B891A31C2BCD13AB006CB06E /* all_in_trolley.mp3 */, | ||
1675 | + B891A31D2BCD13AB006CB06E /* apple.mp3 */, | ||
1676 | + B891A31E2BCD13AB006CB06E /* banana.mp3 */, | ||
1677 | + B891A31F2BCD13AB006CB06E /* cake.mp3 */, | ||
1678 | + B891A3202BCD13AB006CB06E /* chocolate.mp3 */, | ||
1679 | + B891A3212BCD13AB006CB06E /* cucumber.mp3 */, | ||
1680 | + B891A3222BCD13AB006CB06E /* donut.mp3 */, | ||
1681 | + B891A3232BCD13AB006CB06E /* effect_catapult.mp3 */, | ||
1682 | + B891A3242BCD13AB006CB06E /* effect_hit.mp3 */, | ||
1683 | + B891A3252BCD13AB006CB06E /* effect_in_trolley.mp3 */, | ||
1684 | + B891A3262BCD13AB006CB06E /* hit_maggie.mp3 */, | ||
1685 | + B891A3272BCD13AB006CB06E /* hit_steve.mp3 */, | ||
1686 | + B891A3282BCD13AB006CB06E /* icecream.mp3 */, | ||
1687 | + B891A3292BCD13AB006CB06E /* in_trolley.mp3 */, | ||
1688 | + B891A32A2BCD13AB006CB06E /* not_apple.mp3 */, | ||
1689 | + B891A32B2BCD13AB006CB06E /* not_banana.mp3 */, | ||
1690 | + B891A32C2BCD13AB006CB06E /* not_cake.mp3 */, | ||
1691 | + B891A32D2BCD13AB006CB06E /* not_chocolate.mp3 */, | ||
1692 | + B891A32E2BCD13AB006CB06E /* not_cucumber.mp3 */, | ||
1693 | + B891A32F2BCD13AB006CB06E /* not_donut.mp3 */, | ||
1694 | + B891A3302BCD13AB006CB06E /* not_icecream.mp3 */, | ||
1695 | + B891A3312BCD13AB006CB06E /* not_in_trolley.mp3 */, | ||
1696 | + B891A3322BCD13AB006CB06E /* not_tomato.mp3 */, | ||
1697 | + B891A3332BCD13AB006CB06E /* put_it_trolley.mp3 */, | ||
1698 | + B891A3342BCD13AB006CB06E /* shop_closed.mp3 */, | ||
1699 | + B891A3352BCD13AB006CB06E /* start.mp3 */, | ||
1700 | + B891A3362BCD13AB006CB06E /* tomato.mp3 */, | ||
1701 | + B891A3372BCD13AB006CB06E /* wrong_3_times.mp3 */, | ||
168 | ); | 1702 | ); |
169 | - runOnlyForDeploymentPostprocessing = 0; | 1703 | + path = game_shoot; |
1704 | + sourceTree = "<group>"; | ||
170 | }; | 1705 | }; |
171 | - C23E992F6BFFE604720B1F08 /* Frameworks */ = { | ||
172 | - isa = PBXFrameworksBuildPhase; | ||
173 | - buildActionMask = 2147483647; | ||
174 | - files = ( | ||
175 | - F5FCE34FB9E028C20A7850DE /* Pods_RunnerTests.framework in Frameworks */, | 1706 | + B891A3422BCD13AB006CB06E /* games */ = { |
1707 | + isa = PBXGroup; | ||
1708 | + children = ( | ||
1709 | + B891A3382BCD13AB006CB06E /* game_shoot */, | ||
1710 | + B891A3392BCD13AB006CB06E /* g_no.mp3 */, | ||
1711 | + B891A33A2BCD13AB006CB06E /* g_oops.mp3 */, | ||
1712 | + B891A33B2BCD13AB006CB06E /* g_uh_oh.mp3 */, | ||
1713 | + B891A33C2BCD13AB006CB06E /* g_well_done.mp3 */, | ||
1714 | + B891A33D2BCD13AB006CB06E /* g_whoo_hoo.mp3 */, | ||
1715 | + B891A33E2BCD13AB006CB06E /* g_yeah.mp3 */, | ||
1716 | + B891A33F2BCD13AB006CB06E /* maggie_super.mp3 */, | ||
1717 | + B891A3402BCD13AB006CB06E /* maggie_thats_right.mp3 */, | ||
1718 | + B891A3412BCD13AB006CB06E /* maggie_yeah.mp3 */, | ||
176 | ); | 1719 | ); |
177 | - runOnlyForDeploymentPostprocessing = 0; | 1720 | + path = games; |
1721 | + sourceTree = "<group>"; | ||
178 | }; | 1722 | }; |
179 | -/* End PBXFrameworksBuildPhase section */ | ||
180 | - | ||
181 | -/* Begin PBXGroup section */ | ||
182 | - 331C8082294A63A400263BE5 /* RunnerTests */ = { | 1723 | + B891A3442BCD13AB006CB06E /* level_picking */ = { |
183 | isa = PBXGroup; | 1724 | isa = PBXGroup; |
184 | children = ( | 1725 | children = ( |
185 | - 331C807B294A618700263BE5 /* RunnerTests.swift */, | 1726 | + B891A3432BCD13AB006CB06E /* g_pick_level.mp3 */, |
186 | ); | 1727 | ); |
187 | - path = RunnerTests; | 1728 | + path = level_picking; |
188 | sourceTree = "<group>"; | 1729 | sourceTree = "<group>"; |
189 | }; | 1730 | }; |
190 | - 340CE8403EC22FE8EE1FA3EF /* Pods */ = { | 1731 | + B891A3452BCD13AB006CB06E /* sounds */ = { |
191 | isa = PBXGroup; | 1732 | isa = PBXGroup; |
192 | children = ( | 1733 | children = ( |
193 | - F04D1DAE6591EAD461CBBE9A /* Pods-Runner.debug.xcconfig */, | ||
194 | - 3563EC8D55A646823FD26A83 /* Pods-Runner.release.xcconfig */, | ||
195 | - 2DE9FE013448D0821175591C /* Pods-Runner.profile.xcconfig */, | ||
196 | - D63F3847140160A2204489BA /* Pods-RunnerTests.debug.xcconfig */, | ||
197 | - D8C046A1A9C279FDBB5C174E /* Pods-RunnerTests.release.xcconfig */, | ||
198 | - 48BCA0827DCB98991774F5AC /* Pods-RunnerTests.profile.xcconfig */, | 1734 | + B891A3422BCD13AB006CB06E /* games */, |
1735 | + B891A3442BCD13AB006CB06E /* level_picking */, | ||
199 | ); | 1736 | ); |
200 | - path = Pods; | 1737 | + path = sounds; |
201 | sourceTree = "<group>"; | 1738 | sourceTree = "<group>"; |
202 | }; | 1739 | }; |
203 | - 9740EEB11CF90186004384FC /* Flutter */ = { | 1740 | + B891A3462BCD13AB006CB06E /* common */ = { |
204 | isa = PBXGroup; | 1741 | isa = PBXGroup; |
205 | children = ( | 1742 | children = ( |
206 | - 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, | ||
207 | - 9740EEB21CF90195004384FC /* Debug.xcconfig */, | ||
208 | - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, | ||
209 | - 9740EEB31CF90195004384FC /* Generated.xcconfig */, | 1743 | + B891A31B2BCD13AB006CB06E /* games */, |
1744 | + B891A3452BCD13AB006CB06E /* sounds */, | ||
210 | ); | 1745 | ); |
211 | - name = Flutter; | 1746 | + path = common; |
212 | sourceTree = "<group>"; | 1747 | sourceTree = "<group>"; |
213 | }; | 1748 | }; |
214 | - 97C146E51CF9000F007C117D = { | 1749 | + B891A34D2BCD13AB006CB06E /* app_links */ = { |
215 | isa = PBXGroup; | 1750 | isa = PBXGroup; |
216 | children = ( | 1751 | children = ( |
217 | - B852D3ED2BCADF3600A53FC4 /* cocos2d_libs.xcodeproj */, | ||
218 | - 9740EEB11CF90186004384FC /* Flutter */, | ||
219 | - 97C146F01CF9000F007C117D /* Runner */, | ||
220 | - 97C146EF1CF9000F007C117D /* Products */, | ||
221 | - 331C8082294A63A400263BE5 /* RunnerTests */, | ||
222 | - 340CE8403EC22FE8EE1FA3EF /* Pods */, | ||
223 | - E653501EF99460B1BB76C5EE /* Frameworks */, | 1752 | + B891A3472BCD13AB006CB06E /* app_link_halloween.png */, |
1753 | + B891A3482BCD13AB006CB06E /* app_link_toy.png */, | ||
1754 | + B891A3492BCD13AB006CB06E /* doll_toy_app.png */, | ||
1755 | + B891A34A2BCD13AB006CB06E /* halo_icon.png */, | ||
1756 | + B891A34B2BCD13AB006CB06E /* steve_maggie.png */, | ||
1757 | + B891A34C2BCD13AB006CB06E /* witch_halloween_app.png */, | ||
224 | ); | 1758 | ); |
1759 | + path = app_links; | ||
225 | sourceTree = "<group>"; | 1760 | sourceTree = "<group>"; |
226 | }; | 1761 | }; |
227 | - 97C146EF1CF9000F007C117D /* Products */ = { | 1762 | + B891A35E2BCD13AB006CB06E /* graphics */ = { |
228 | isa = PBXGroup; | 1763 | isa = PBXGroup; |
229 | children = ( | 1764 | children = ( |
230 | - 97C146EE1CF9000F007C117D /* Runner.app */, | ||
231 | - 331C8081294A63A400263BE5 /* RunnerTests.xctest */, | 1765 | + B891A34E2BCD13AB006CB06E /* button_back.png */, |
1766 | + B891A34F2BCD13AB006CB06E /* button_go.png */, | ||
1767 | + B891A3502BCD13AB006CB06E /* button_green.png */, | ||
1768 | + B891A3512BCD13AB006CB06E /* button_grey.png */, | ||
1769 | + B891A3522BCD13AB006CB06E /* button_orange.png */, | ||
1770 | + B891A3532BCD13AB006CB06E /* button_pause.png */, | ||
1771 | + B891A3542BCD13AB006CB06E /* button_purple.png */, | ||
1772 | + B891A3552BCD13AB006CB06E /* button_red.png */, | ||
1773 | + B891A3562BCD13AB006CB06E /* button_repeat.png */, | ||
1774 | + B891A3572BCD13AB006CB06E /* button_setting.png */, | ||
1775 | + B891A3582BCD13AB006CB06E /* button_sound_off.png */, | ||
1776 | + B891A3592BCD13AB006CB06E /* button_sound_on.png */, | ||
1777 | + B891A35A2BCD13AB006CB06E /* button_turquoise.png */, | ||
1778 | + B891A35B2BCD13AB006CB06E /* button_yellow.png */, | ||
1779 | + B891A35C2BCD13AB006CB06E /* buttonff.png */, | ||
1780 | + B891A35D2BCD13AB006CB06E /* dark_green.png */, | ||
232 | ); | 1781 | ); |
233 | - name = Products; | 1782 | + path = graphics; |
234 | sourceTree = "<group>"; | 1783 | sourceTree = "<group>"; |
235 | }; | 1784 | }; |
236 | - 97C146F01CF9000F007C117D /* Runner */ = { | 1785 | + B891A3602BCD13AB006CB06E /* buttons */ = { |
237 | isa = PBXGroup; | 1786 | isa = PBXGroup; |
238 | children = ( | 1787 | children = ( |
239 | - 52450AF22A4ED0EC007B3E4B /* Runner.entitlements */, | ||
240 | - 97C146FA1CF9000F007C117D /* Main.storyboard */, | ||
241 | - 97C146FD1CF9000F007C117D /* Assets.xcassets */, | ||
242 | - 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, | ||
243 | - 97C147021CF9000F007C117D /* Info.plist */, | ||
244 | - 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, | ||
245 | - 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, | ||
246 | - 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, | ||
247 | - 52450AF02A4C415B007B3E4B /* XSMessageMehtodChannel.swift */, | ||
248 | - 525E17192A4BD03900104CDF /* VoiceXSMessageChannel.swift */, | ||
249 | - B852C1342BCABB5E00A53FC4 /* GameMessageChannel.swift */, | ||
250 | - 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, | 1788 | + B891A35E2BCD13AB006CB06E /* graphics */, |
1789 | + B891A35F2BCD13AB006CB06E /* horizontalButtonPanelBackFFPause.obl */, | ||
251 | ); | 1790 | ); |
252 | - path = Runner; | 1791 | + path = buttons; |
253 | sourceTree = "<group>"; | 1792 | sourceTree = "<group>"; |
254 | }; | 1793 | }; |
255 | - B852D3EE2BCADF3600A53FC4 /* Products */ = { | 1794 | + B891A3642BCD13AB006CB06E /* levels */ = { |
256 | isa = PBXGroup; | 1795 | isa = PBXGroup; |
257 | children = ( | 1796 | children = ( |
258 | - B852D3FF2BCADF3700A53FC4 /* libcocos2d.a */, | ||
259 | - B852D4012BCADF3700A53FC4 /* libext_clipper.a */, | ||
260 | - B852D4032BCADF3700A53FC4 /* libext_convertUTF.a */, | ||
261 | - B852D4052BCADF3700A53FC4 /* libext_edtaa3func.a */, | ||
262 | - B852D4072BCADF3700A53FC4 /* libext_md5.a */, | ||
263 | - B852D4092BCADF3700A53FC4 /* libext_poly2tri.a */, | ||
264 | - B852D40B2BCADF3700A53FC4 /* libext_recast.a */, | ||
265 | - B852D40D2BCADF3700A53FC4 /* libext_tinyxml2.a */, | ||
266 | - B852D40F2BCADF3700A53FC4 /* libext_unzip.a */, | ||
267 | - B852D4112BCADF3700A53FC4 /* libext_xxhash.a */, | ||
268 | - B852D4132BCADF3700A53FC4 /* libext_xxtea.a */, | ||
269 | - B852D4152BCADF3700A53FC4 /* libexternal.a */, | 1797 | + B891A3612BCD13AB006CB06E /* level_1.png */, |
1798 | + B891A3622BCD13AB006CB06E /* level_2.png */, | ||
1799 | + B891A3632BCD13AB006CB06E /* level_3.png */, | ||
270 | ); | 1800 | ); |
271 | - name = Products; | 1801 | + path = levels; |
1802 | + sourceTree = "<group>"; | ||
1803 | + }; | ||
1804 | + B891A3712BCD13AB006CB06E /* shelf_food */ = { | ||
1805 | + isa = PBXGroup; | ||
1806 | + children = ( | ||
1807 | + B891A3652BCD13AB006CB06E /* apples.png */, | ||
1808 | + B891A3662BCD13AB006CB06E /* baguettes.png */, | ||
1809 | + B891A3672BCD13AB006CB06E /* bananas.png */, | ||
1810 | + B891A3682BCD13AB006CB06E /* cakes.png */, | ||
1811 | + B891A3692BCD13AB006CB06E /* chocolate.png */, | ||
1812 | + B891A36A2BCD13AB006CB06E /* cucumbers.png */, | ||
1813 | + B891A36B2BCD13AB006CB06E /* donuts.png */, | ||
1814 | + B891A36C2BCD13AB006CB06E /* icecream.png */, | ||
1815 | + B891A36D2BCD13AB006CB06E /* lettuce.png */, | ||
1816 | + B891A36E2BCD13AB006CB06E /* milk.png */, | ||
1817 | + B891A36F2BCD13AB006CB06E /* orange.png */, | ||
1818 | + B891A3702BCD13AB006CB06E /* tomatoes.png */, | ||
1819 | + ); | ||
1820 | + path = shelf_food; | ||
1821 | + sourceTree = "<group>"; | ||
1822 | + }; | ||
1823 | + B891A38E2BCD13AB006CB06E /* single_food */ = { | ||
1824 | + isa = PBXGroup; | ||
1825 | + children = ( | ||
1826 | + B891A3722BCD13AB006CB06E /* apple_splodge.png */, | ||
1827 | + B891A3732BCD13AB006CB06E /* apple1.png */, | ||
1828 | + B891A3742BCD13AB006CB06E /* apple2.png */, | ||
1829 | + B891A3752BCD13AB006CB06E /* baguette.png */, | ||
1830 | + B891A3762BCD13AB006CB06E /* banana_splodge.png */, | ||
1831 | + B891A3772BCD13AB006CB06E /* banana1.png */, | ||
1832 | + B891A3782BCD13AB006CB06E /* banana2.png */, | ||
1833 | + B891A3792BCD13AB006CB06E /* cake_splodge.png */, | ||
1834 | + B891A37A2BCD13AB006CB06E /* cake1.png */, | ||
1835 | + B891A37B2BCD13AB006CB06E /* cake2.png */, | ||
1836 | + B891A37C2BCD13AB006CB06E /* chocolate_splodge.png */, | ||
1837 | + B891A37D2BCD13AB006CB06E /* chocolate1.png */, | ||
1838 | + B891A37E2BCD13AB006CB06E /* chocolate2.png */, | ||
1839 | + B891A37F2BCD13AB006CB06E /* cucumber_splodge.png */, | ||
1840 | + B891A3802BCD13AB006CB06E /* cucumber1.png */, | ||
1841 | + B891A3812BCD13AB006CB06E /* cucumber2.png */, | ||
1842 | + B891A3822BCD13AB006CB06E /* donut_splodge.png */, | ||
1843 | + B891A3832BCD13AB006CB06E /* donut1.png */, | ||
1844 | + B891A3842BCD13AB006CB06E /* donut2.png */, | ||
1845 | + B891A3852BCD13AB006CB06E /* icecream_splodge.png */, | ||
1846 | + B891A3862BCD13AB006CB06E /* icecream1.png */, | ||
1847 | + B891A3872BCD13AB006CB06E /* icecream2.png */, | ||
1848 | + B891A3882BCD13AB006CB06E /* lettuce.png */, | ||
1849 | + B891A3892BCD13AB006CB06E /* milk.png */, | ||
1850 | + B891A38A2BCD13AB006CB06E /* orange.png */, | ||
1851 | + B891A38B2BCD13AB006CB06E /* tomato_splodge.png */, | ||
1852 | + B891A38C2BCD13AB006CB06E /* tomato1.png */, | ||
1853 | + B891A38D2BCD13AB006CB06E /* tomato2.png */, | ||
1854 | + ); | ||
1855 | + path = single_food; | ||
1856 | + sourceTree = "<group>"; | ||
1857 | + }; | ||
1858 | + B891A39E2BCD13AB006CB06E /* graphics */ = { | ||
1859 | + isa = PBXGroup; | ||
1860 | + children = ( | ||
1861 | + B891A3712BCD13AB006CB06E /* shelf_food */, | ||
1862 | + B891A38E2BCD13AB006CB06E /* single_food */, | ||
1863 | + B891A38F2BCD13AB006CB06E /* cart_back1.png */, | ||
1864 | + B891A3902BCD13AB006CB06E /* cart_back2.png */, | ||
1865 | + B891A3912BCD13AB006CB06E /* cart_front.png */, | ||
1866 | + B891A3922BCD13AB006CB06E /* clock.png */, | ||
1867 | + B891A3932BCD13AB006CB06E /* food_in_cart.png */, | ||
1868 | + B891A3942BCD13AB006CB06E /* gum.png */, | ||
1869 | + B891A3952BCD13AB006CB06E /* hand_leather.png */, | ||
1870 | + B891A3962BCD13AB006CB06E /* hand_sling.png */, | ||
1871 | + B891A3972BCD13AB006CB06E /* sling.png */, | ||
1872 | + B891A3982BCD13AB006CB06E /* steve_head1.png */, | ||
1873 | + B891A3992BCD13AB006CB06E /* steve_head2.png */, | ||
1874 | + B891A39A2BCD13AB006CB06E /* steve_head3.png */, | ||
1875 | + B891A39B2BCD13AB006CB06E /* steve_head4.png */, | ||
1876 | + B891A39C2BCD13AB006CB06E /* steve_head5.png */, | ||
1877 | + B891A39D2BCD13AB006CB06E /* wooden_shelf.png */, | ||
1878 | + ); | ||
1879 | + path = graphics; | ||
1880 | + sourceTree = "<group>"; | ||
1881 | + }; | ||
1882 | + B891A3A02BCD13AB006CB06E /* shoot_game */ = { | ||
1883 | + isa = PBXGroup; | ||
1884 | + children = ( | ||
1885 | + B891A39E2BCD13AB006CB06E /* graphics */, | ||
1886 | + B891A39F2BCD13AB006CB06E /* scene_layout.scl */, | ||
1887 | + ); | ||
1888 | + path = shoot_game; | ||
1889 | + sourceTree = "<group>"; | ||
1890 | + }; | ||
1891 | + B891A3A32BCD13AB006CB06E /* tos_popup */ = { | ||
1892 | + isa = PBXGroup; | ||
1893 | + children = ( | ||
1894 | + B891A3A12BCD13AB006CB06E /* accept_button.png */, | ||
1895 | + B891A3A22BCD13AB006CB06E /* accept_popup.png */, | ||
1896 | + ); | ||
1897 | + path = tos_popup; | ||
1898 | + sourceTree = "<group>"; | ||
1899 | + }; | ||
1900 | + B891A3A82BCD13AB006CB06E /* graphics */ = { | ||
1901 | + isa = PBXGroup; | ||
1902 | + children = ( | ||
1903 | + B891A3642BCD13AB006CB06E /* levels */, | ||
1904 | + B891A3A02BCD13AB006CB06E /* shoot_game */, | ||
1905 | + B891A3A32BCD13AB006CB06E /* tos_popup */, | ||
1906 | + B891A3A42BCD13AB006CB06E /* g_finger.png */, | ||
1907 | + B891A3A52BCD13AB006CB06E /* g_life_indicator_dead.png */, | ||
1908 | + B891A3A62BCD13AB006CB06E /* g_life_indicator_ok.png */, | ||
1909 | + B891A3A72BCD13AB006CB06E /* level_halo.png */, | ||
1910 | + ); | ||
1911 | + path = graphics; | ||
1912 | + sourceTree = "<group>"; | ||
1913 | + }; | ||
1914 | + B891A3A92BCD13AB006CB06E /* small */ = { | ||
1915 | + isa = PBXGroup; | ||
1916 | + children = ( | ||
1917 | + B891A34D2BCD13AB006CB06E /* app_links */, | ||
1918 | + B891A3602BCD13AB006CB06E /* buttons */, | ||
1919 | + B891A3A82BCD13AB006CB06E /* graphics */, | ||
1920 | + ); | ||
1921 | + path = small; | ||
1922 | + sourceTree = "<group>"; | ||
1923 | + }; | ||
1924 | + B891A3B02BCD13AB006CB06E /* app_links */ = { | ||
1925 | + isa = PBXGroup; | ||
1926 | + children = ( | ||
1927 | + B891A3AA2BCD13AB006CB06E /* app_link_halloween.png */, | ||
1928 | + B891A3AB2BCD13AB006CB06E /* app_link_toy.png */, | ||
1929 | + B891A3AC2BCD13AB006CB06E /* doll_toy_app.png */, | ||
1930 | + B891A3AD2BCD13AB006CB06E /* halo_icon.png */, | ||
1931 | + B891A3AE2BCD13AB006CB06E /* steve_maggie.png */, | ||
1932 | + B891A3AF2BCD13AB006CB06E /* witch_halloween_app.png */, | ||
1933 | + ); | ||
1934 | + path = app_links; | ||
1935 | + sourceTree = "<group>"; | ||
1936 | + }; | ||
1937 | + B891A3C12BCD13AB006CB06E /* graphics */ = { | ||
1938 | + isa = PBXGroup; | ||
1939 | + children = ( | ||
1940 | + B891A3B12BCD13AB006CB06E /* button_back.png */, | ||
1941 | + B891A3B22BCD13AB006CB06E /* button_go.png */, | ||
1942 | + B891A3B32BCD13AB006CB06E /* button_green.png */, | ||
1943 | + B891A3B42BCD13AB006CB06E /* button_grey.png */, | ||
1944 | + B891A3B52BCD13AB006CB06E /* button_orange.png */, | ||
1945 | + B891A3B62BCD13AB006CB06E /* button_pause.png */, | ||
1946 | + B891A3B72BCD13AB006CB06E /* button_purple.png */, | ||
1947 | + B891A3B82BCD13AB006CB06E /* button_red.png */, | ||
1948 | + B891A3B92BCD13AB006CB06E /* button_repeat.png */, | ||
1949 | + B891A3BA2BCD13AB006CB06E /* button_setting.png */, | ||
1950 | + B891A3BB2BCD13AB006CB06E /* button_sound_off.png */, | ||
1951 | + B891A3BC2BCD13AB006CB06E /* button_sound_on.png */, | ||
1952 | + B891A3BD2BCD13AB006CB06E /* button_turquoise.png */, | ||
1953 | + B891A3BE2BCD13AB006CB06E /* button_yellow.png */, | ||
1954 | + B891A3BF2BCD13AB006CB06E /* buttonff.png */, | ||
1955 | + B891A3C02BCD13AB006CB06E /* dark_green.png */, | ||
1956 | + ); | ||
1957 | + path = graphics; | ||
1958 | + sourceTree = "<group>"; | ||
1959 | + }; | ||
1960 | + B891A3C32BCD13AB006CB06E /* buttons */ = { | ||
1961 | + isa = PBXGroup; | ||
1962 | + children = ( | ||
1963 | + B891A3C12BCD13AB006CB06E /* graphics */, | ||
1964 | + B891A3C22BCD13AB006CB06E /* horizontalButtonPanelBackFFPause.obl */, | ||
1965 | + ); | ||
1966 | + path = buttons; | ||
1967 | + sourceTree = "<group>"; | ||
1968 | + }; | ||
1969 | + B891A3C72BCD13AB006CB06E /* levels */ = { | ||
1970 | + isa = PBXGroup; | ||
1971 | + children = ( | ||
1972 | + B891A3C42BCD13AB006CB06E /* level_1.png */, | ||
1973 | + B891A3C52BCD13AB006CB06E /* level_2.png */, | ||
1974 | + B891A3C62BCD13AB006CB06E /* level_3.png */, | ||
1975 | + ); | ||
1976 | + path = levels; | ||
1977 | + sourceTree = "<group>"; | ||
1978 | + }; | ||
1979 | + B891A3D42BCD13AB006CB06E /* shelf_food */ = { | ||
1980 | + isa = PBXGroup; | ||
1981 | + children = ( | ||
1982 | + B891A3C82BCD13AB006CB06E /* apples.png */, | ||
1983 | + B891A3C92BCD13AB006CB06E /* baguettes.png */, | ||
1984 | + B891A3CA2BCD13AB006CB06E /* bananas.png */, | ||
1985 | + B891A3CB2BCD13AB006CB06E /* cakes.png */, | ||
1986 | + B891A3CC2BCD13AB006CB06E /* chocolate.png */, | ||
1987 | + B891A3CD2BCD13AB006CB06E /* cucumbers.png */, | ||
1988 | + B891A3CE2BCD13AB006CB06E /* donuts.png */, | ||
1989 | + B891A3CF2BCD13AB006CB06E /* icecream.png */, | ||
1990 | + B891A3D02BCD13AB006CB06E /* lettuce.png */, | ||
1991 | + B891A3D12BCD13AB006CB06E /* milk.png */, | ||
1992 | + B891A3D22BCD13AB006CB06E /* orange.png */, | ||
1993 | + B891A3D32BCD13AB006CB06E /* tomatoes.png */, | ||
1994 | + ); | ||
1995 | + path = shelf_food; | ||
1996 | + sourceTree = "<group>"; | ||
1997 | + }; | ||
1998 | + B891A3F12BCD13AB006CB06E /* single_food */ = { | ||
1999 | + isa = PBXGroup; | ||
2000 | + children = ( | ||
2001 | + B891A3D52BCD13AB006CB06E /* apple_splodge.png */, | ||
2002 | + B891A3D62BCD13AB006CB06E /* apple1.png */, | ||
2003 | + B891A3D72BCD13AB006CB06E /* apple2.png */, | ||
2004 | + B891A3D82BCD13AB006CB06E /* baguette.png */, | ||
2005 | + B891A3D92BCD13AB006CB06E /* banana_splodge.png */, | ||
2006 | + B891A3DA2BCD13AB006CB06E /* banana1.png */, | ||
2007 | + B891A3DB2BCD13AB006CB06E /* banana2.png */, | ||
2008 | + B891A3DC2BCD13AB006CB06E /* cake_splodge.png */, | ||
2009 | + B891A3DD2BCD13AB006CB06E /* cake1.png */, | ||
2010 | + B891A3DE2BCD13AB006CB06E /* cake2.png */, | ||
2011 | + B891A3DF2BCD13AB006CB06E /* chocolate_splodge.png */, | ||
2012 | + B891A3E02BCD13AB006CB06E /* chocolate1.png */, | ||
2013 | + B891A3E12BCD13AB006CB06E /* chocolate2.png */, | ||
2014 | + B891A3E22BCD13AB006CB06E /* cucumber_splodge.png */, | ||
2015 | + B891A3E32BCD13AB006CB06E /* cucumber1.png */, | ||
2016 | + B891A3E42BCD13AB006CB06E /* cucumber2.png */, | ||
2017 | + B891A3E52BCD13AB006CB06E /* donut_splodge.png */, | ||
2018 | + B891A3E62BCD13AB006CB06E /* donut1.png */, | ||
2019 | + B891A3E72BCD13AB006CB06E /* donut2.png */, | ||
2020 | + B891A3E82BCD13AB006CB06E /* icecream_splodge.png */, | ||
2021 | + B891A3E92BCD13AB006CB06E /* icecream1.png */, | ||
2022 | + B891A3EA2BCD13AB006CB06E /* icecream2.png */, | ||
2023 | + B891A3EB2BCD13AB006CB06E /* lettuce.png */, | ||
2024 | + B891A3EC2BCD13AB006CB06E /* milk.png */, | ||
2025 | + B891A3ED2BCD13AB006CB06E /* orange.png */, | ||
2026 | + B891A3EE2BCD13AB006CB06E /* tomato_splodge.png */, | ||
2027 | + B891A3EF2BCD13AB006CB06E /* tomato1.png */, | ||
2028 | + B891A3F02BCD13AB006CB06E /* tomato2.png */, | ||
2029 | + ); | ||
2030 | + path = single_food; | ||
2031 | + sourceTree = "<group>"; | ||
2032 | + }; | ||
2033 | + B891A4032BCD13AB006CB06E /* graphics */ = { | ||
2034 | + isa = PBXGroup; | ||
2035 | + children = ( | ||
2036 | + B891A3D42BCD13AB006CB06E /* shelf_food */, | ||
2037 | + B891A3F12BCD13AB006CB06E /* single_food */, | ||
2038 | + B891A3F22BCD13AB006CB06E /* background.png */, | ||
2039 | + B891A3F32BCD13AB006CB06E /* cart_back1.png */, | ||
2040 | + B891A3F42BCD13AB006CB06E /* cart_back2.png */, | ||
2041 | + B891A3F52BCD13AB006CB06E /* cart_front.png */, | ||
2042 | + B891A3F62BCD13AB006CB06E /* clock.png */, | ||
2043 | + B891A3F72BCD13AB006CB06E /* food_in_cart.png */, | ||
2044 | + B891A3F82BCD13AB006CB06E /* gum.png */, | ||
2045 | + B891A3F92BCD13AB006CB06E /* hand_leather.png */, | ||
2046 | + B891A3FA2BCD13AB006CB06E /* hand_sling.png */, | ||
2047 | + B891A3FB2BCD13AB006CB06E /* sling.png */, | ||
2048 | + B891A3FC2BCD13AB006CB06E /* steve_head1.png */, | ||
2049 | + B891A3FD2BCD13AB006CB06E /* steve_head2.png */, | ||
2050 | + B891A3FE2BCD13AB006CB06E /* steve_head3.png */, | ||
2051 | + B891A3FF2BCD13AB006CB06E /* steve_head4.png */, | ||
2052 | + B891A4002BCD13AB006CB06E /* steve_head5.png */, | ||
2053 | + B891A4012BCD13AB006CB06E /* well_done_pic.png */, | ||
2054 | + B891A4022BCD13AB006CB06E /* wooden_shelf.png */, | ||
2055 | + ); | ||
2056 | + path = graphics; | ||
2057 | + sourceTree = "<group>"; | ||
2058 | + }; | ||
2059 | + B891A4052BCD13AB006CB06E /* shoot_game */ = { | ||
2060 | + isa = PBXGroup; | ||
2061 | + children = ( | ||
2062 | + B891A4032BCD13AB006CB06E /* graphics */, | ||
2063 | + B891A4042BCD13AB006CB06E /* scene_layout.scl */, | ||
2064 | + ); | ||
2065 | + path = shoot_game; | ||
2066 | + sourceTree = "<group>"; | ||
2067 | + }; | ||
2068 | + B891A4082BCD13AB006CB06E /* tos_popup */ = { | ||
2069 | + isa = PBXGroup; | ||
2070 | + children = ( | ||
2071 | + B891A4062BCD13AB006CB06E /* accept_button.png */, | ||
2072 | + B891A4072BCD13AB006CB06E /* accept_popup.png */, | ||
2073 | + ); | ||
2074 | + path = tos_popup; | ||
2075 | + sourceTree = "<group>"; | ||
2076 | + }; | ||
2077 | + B891A40D2BCD13AB006CB06E /* graphics */ = { | ||
2078 | + isa = PBXGroup; | ||
2079 | + children = ( | ||
2080 | + B891A3C72BCD13AB006CB06E /* levels */, | ||
2081 | + B891A4052BCD13AB006CB06E /* shoot_game */, | ||
2082 | + B891A4082BCD13AB006CB06E /* tos_popup */, | ||
2083 | + B891A4092BCD13AB006CB06E /* g_finger.png */, | ||
2084 | + B891A40A2BCD13AB006CB06E /* g_life_indicator_dead.png */, | ||
2085 | + B891A40B2BCD13AB006CB06E /* g_life_indicator_ok.png */, | ||
2086 | + B891A40C2BCD13AB006CB06E /* level_halo.png */, | ||
2087 | + ); | ||
2088 | + path = graphics; | ||
2089 | + sourceTree = "<group>"; | ||
2090 | + }; | ||
2091 | + B891A40E2BCD13AB006CB06E /* xlarge */ = { | ||
2092 | + isa = PBXGroup; | ||
2093 | + children = ( | ||
2094 | + B891A3B02BCD13AB006CB06E /* app_links */, | ||
2095 | + B891A3C32BCD13AB006CB06E /* buttons */, | ||
2096 | + B891A40D2BCD13AB006CB06E /* graphics */, | ||
2097 | + ); | ||
2098 | + path = xlarge; | ||
2099 | + sourceTree = "<group>"; | ||
2100 | + }; | ||
2101 | + B891A4102BCD13AB006CB06E /* res */ = { | ||
2102 | + isa = PBXGroup; | ||
2103 | + children = ( | ||
2104 | + B891A3462BCD13AB006CB06E /* common */, | ||
2105 | + B891A3A92BCD13AB006CB06E /* small */, | ||
2106 | + B891A40E2BCD13AB006CB06E /* xlarge */, | ||
2107 | + B891A40F2BCD13AB006CB06E /* .gitkeep */, | ||
2108 | + ); | ||
2109 | + path = res; | ||
2110 | + sourceTree = "<group>"; | ||
2111 | + }; | ||
2112 | + B891A4112BCD13AB006CB06E /* Resources */ = { | ||
2113 | + isa = PBXGroup; | ||
2114 | + children = ( | ||
2115 | + B891A3182BCD13AB006CB06E /* fonts */, | ||
2116 | + B891A4102BCD13AB006CB06E /* res */, | ||
2117 | + ); | ||
2118 | + path = Resources; | ||
272 | sourceTree = "<group>"; | 2119 | sourceTree = "<group>"; |
273 | }; | 2120 | }; |
274 | E653501EF99460B1BB76C5EE /* Frameworks */ = { | 2121 | E653501EF99460B1BB76C5EE /* Frameworks */ = { |
@@ -315,10 +2162,54 @@ | @@ -315,10 +2162,54 @@ | ||
315 | 3B06AD1E1E4923F5004D2608 /* Thin Binary */, | 2162 | 3B06AD1E1E4923F5004D2608 /* Thin Binary */, |
316 | 7C15D12B84189A796384E28E /* [CP] Embed Pods Frameworks */, | 2163 | 7C15D12B84189A796384E28E /* [CP] Embed Pods Frameworks */, |
317 | 62E27B63BBBA522854453C53 /* [CP] Copy Pods Resources */, | 2164 | 62E27B63BBBA522854453C53 /* [CP] Copy Pods Resources */, |
2165 | + B891A4F12BCD17E2006CB06E /* CopyFiles */, | ||
2166 | + B891A4F22BCD240A006CB06E /* CopyFiles */, | ||
2167 | + B891A4F32BCD240C006CB06E /* CopyFiles */, | ||
2168 | + B891A4F42BCD240D006CB06E /* CopyFiles */, | ||
2169 | + B891A4F52BCD240E006CB06E /* CopyFiles */, | ||
2170 | + B891A4F62BCD240F006CB06E /* CopyFiles */, | ||
2171 | + B891A4F72BCD2410006CB06E /* CopyFiles */, | ||
2172 | + B891A4F82BCD2411006CB06E /* CopyFiles */, | ||
2173 | + B891A5062BCD24CE006CB06E /* CopyFiles */, | ||
2174 | + B891A5072BCD24DF006CB06E /* CopyFiles */, | ||
2175 | + B891A5082BCD24E0006CB06E /* CopyFiles */, | ||
2176 | + B891A5092BCD24E1006CB06E /* CopyFiles */, | ||
2177 | + B891A50A2BCD24E2006CB06E /* CopyFiles */, | ||
2178 | + B891A50B2BCD24E3006CB06E /* CopyFiles */, | ||
2179 | + B891A50C2BCD24E4006CB06E /* CopyFiles */, | ||
2180 | + B891A50D2BCD24E5006CB06E /* CopyFiles */, | ||
2181 | + B891A50E2BCD24E6006CB06E /* CopyFiles */, | ||
2182 | + B891A54B2BCD261A006CB06E /* CopyFiles */, | ||
2183 | + B891A54C2BCD261B006CB06E /* CopyFiles */, | ||
2184 | + B891A54D2BCD261C006CB06E /* CopyFiles */, | ||
2185 | + B891A54E2BCD261D006CB06E /* CopyFiles */, | ||
2186 | + B891A54F2BCD261E006CB06E /* CopyFiles */, | ||
2187 | + B891A5502BCD261F006CB06E /* CopyFiles */, | ||
2188 | + B891A5512BCD2620006CB06E /* CopyFiles */, | ||
2189 | + B891A5522BCD2621006CB06E /* CopyFiles */, | ||
2190 | + B891A5532BCD2622006CB06E /* CopyFiles */, | ||
2191 | + B891A5542BCD2623006CB06E /* CopyFiles */, | ||
2192 | + B891A5552BCD2624006CB06E /* CopyFiles */, | ||
2193 | + B891A5562BCD2625006CB06E /* CopyFiles */, | ||
2194 | + B891A5C02BCD27CC006CB06E /* CopyFiles */, | ||
2195 | + B891A5C12BCD27CD006CB06E /* CopyFiles */, | ||
2196 | + B891A5C22BCD27CE006CB06E /* CopyFiles */, | ||
318 | ); | 2197 | ); |
319 | buildRules = ( | 2198 | buildRules = ( |
320 | ); | 2199 | ); |
321 | dependencies = ( | 2200 | dependencies = ( |
2201 | + B891A2382BCD0799006CB06E /* PBXTargetDependency */, | ||
2202 | + B891A25C2BCD07AE006CB06E /* PBXTargetDependency */, | ||
2203 | + B891A24C2BCD07AE006CB06E /* PBXTargetDependency */, | ||
2204 | + B891A24E2BCD07AE006CB06E /* PBXTargetDependency */, | ||
2205 | + B891A2502BCD07AE006CB06E /* PBXTargetDependency */, | ||
2206 | + B891A2522BCD07AE006CB06E /* PBXTargetDependency */, | ||
2207 | + B891A2542BCD07AE006CB06E /* PBXTargetDependency */, | ||
2208 | + B891A2562BCD07AE006CB06E /* PBXTargetDependency */, | ||
2209 | + B891A2582BCD07AE006CB06E /* PBXTargetDependency */, | ||
2210 | + B891A25A2BCD07AE006CB06E /* PBXTargetDependency */, | ||
2211 | + B891A24A2BCD07A4006CB06E /* PBXTargetDependency */, | ||
2212 | + B891A2482BCD07A0006CB06E /* PBXTargetDependency */, | ||
322 | ); | 2213 | ); |
323 | name = Runner; | 2214 | name = Runner; |
324 | productName = Runner; | 2215 | productName = Runner; |
@@ -602,11 +2493,54 @@ | @@ -602,11 +2493,54 @@ | ||
602 | isa = PBXSourcesBuildPhase; | 2493 | isa = PBXSourcesBuildPhase; |
603 | buildActionMask = 2147483647; | 2494 | buildActionMask = 2147483647; |
604 | files = ( | 2495 | files = ( |
2496 | + B891A3112BCD1392006CB06E /* ScalingUtils.cpp in Sources */, | ||
2497 | + B891A2F02BCD1392006CB06E /* PlainNode.cpp in Sources */, | ||
2498 | + B891A3052BCD1392006CB06E /* StaticActionParser.cpp in Sources */, | ||
2499 | + B891A30C2BCD1392006CB06E /* DrawingUtils.cpp in Sources */, | ||
2500 | + B891A2E22BCD1392006CB06E /* LevelPickerLayer.cpp in Sources */, | ||
605 | 525E171A2A4BD03900104CDF /* VoiceXSMessageChannel.swift in Sources */, | 2501 | 525E171A2A4BD03900104CDF /* VoiceXSMessageChannel.swift in Sources */, |
2502 | + B891A3122BCD1392006CB06E /* SoundsRepo.cpp in Sources */, | ||
2503 | + B891A2EC2BCD1392006CB06E /* TOSAcceptPopupView.cpp in Sources */, | ||
2504 | + B891A30A2BCD1392006CB06E /* ParentScene.cpp in Sources */, | ||
2505 | + B891A30F2BCD1392006CB06E /* MiscUtils.cpp in Sources */, | ||
2506 | + B891A2F42BCD1392006CB06E /* TouchableSprite.cpp in Sources */, | ||
606 | 52450AF12A4C415B007B3E4B /* XSMessageMehtodChannel.swift in Sources */, | 2507 | 52450AF12A4C415B007B3E4B /* XSMessageMehtodChannel.swift in Sources */, |
2508 | + B891A2F22BCD1392006CB06E /* ProgressSliderNode.cpp in Sources */, | ||
2509 | + B891A2ED2BCD1392006CB06E /* ChangingSprite.cpp in Sources */, | ||
2510 | + B891A2E42BCD1392006CB06E /* SimpleLevelPickerView.cpp in Sources */, | ||
2511 | + B891A2E72BCD1392006CB06E /* GameLifeIndicatorView.cpp in Sources */, | ||
2512 | + B891A2E52BCD1392006CB06E /* AlertView.cpp in Sources */, | ||
2513 | + B891A2F12BCD1392006CB06E /* PlainSprite.cpp in Sources */, | ||
2514 | + B891A2EB2BCD1392006CB06E /* SettingsLayer.cpp in Sources */, | ||
2515 | + B891A3042BCD1392006CB06E /* JSONParseUtils.cpp in Sources */, | ||
607 | 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, | 2516 | 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, |
2517 | + B891A2F72BCD1392006CB06E /* Strings.cpp in Sources */, | ||
2518 | + B891A30E2BCD1392006CB06E /* MathUtils.cpp in Sources */, | ||
2519 | + B891A3062BCD1392006CB06E /* ValueStorage.cpp in Sources */, | ||
2520 | + B891A2F92BCD1392006CB06E /* GameConfigParser.cpp in Sources */, | ||
2521 | + B891A2F32BCD1392006CB06E /* SimpleButton.cpp in Sources */, | ||
2522 | + B891A2E62BCD1392006CB06E /* AppLinksView.cpp in Sources */, | ||
2523 | + B891A3102BCD1392006CB06E /* ResourceUtilities.cpp in Sources */, | ||
2524 | + B891A2EA2BCD1392006CB06E /* ParentalGateView.cpp in Sources */, | ||
2525 | + B891A2E32BCD1392006CB06E /* LevelPickerView.cpp in Sources */, | ||
2526 | + B891A2EF2BCD1392006CB06E /* PlainLabel.cpp in Sources */, | ||
2527 | + B891A30B2BCD1392006CB06E /* SceneWithUtils.cpp in Sources */, | ||
2528 | + B891A2FA2BCD1392006CB06E /* LayoutObject.cpp in Sources */, | ||
2529 | + B891A2E92BCD1392006CB06E /* ParentalGateShowInterface.cpp in Sources */, | ||
608 | 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, | 2530 | 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, |
2531 | + B891A30D2BCD1392006CB06E /* GeometryUtils.cpp in Sources */, | ||
2532 | + B891A3072BCD1392006CB06E /* SubGameScene.cpp in Sources */, | ||
2533 | + B891A2F62BCD1392006CB06E /* ResourcesConfig.cpp in Sources */, | ||
2534 | + B891A2F52BCD1392006CB06E /* TwoStateButton.cpp in Sources */, | ||
2535 | + B891A3142BCD1392006CB06E /* StringUtils.cpp in Sources */, | ||
609 | B852C1352BCABB5E00A53FC4 /* GameMessageChannel.swift in Sources */, | 2536 | B852C1352BCABB5E00A53FC4 /* GameMessageChannel.swift in Sources */, |
2537 | + B891A2E82BCD1392006CB06E /* LevelView.cpp in Sources */, | ||
2538 | + B891A2FC2BCD1392006CB06E /* ActionData.cpp in Sources */, | ||
2539 | + B891A2E12BCD1392006CB06E /* TouchInterceptingLayer.cpp in Sources */, | ||
2540 | + B891A3132BCD1392006CB06E /* SoundUtils.cpp in Sources */, | ||
2541 | + B891A2EE2BCD1392006CB06E /* ContainerSprite.cpp in Sources */, | ||
2542 | + B891A3082BCD1392006CB06E /* SubGameSceneShoot.cpp in Sources */, | ||
2543 | + B891A2FB2BCD1392006CB06E /* LayoutParser.cpp in Sources */, | ||
610 | ); | 2544 | ); |
611 | runOnlyForDeploymentPostprocessing = 0; | 2545 | runOnlyForDeploymentPostprocessing = 0; |
612 | }; | 2546 | }; |
@@ -618,6 +2552,66 @@ | @@ -618,6 +2552,66 @@ | ||
618 | target = 97C146ED1CF9000F007C117D /* Runner */; | 2552 | target = 97C146ED1CF9000F007C117D /* Runner */; |
619 | targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; | 2553 | targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; |
620 | }; | 2554 | }; |
2555 | + B891A2382BCD0799006CB06E /* PBXTargetDependency */ = { | ||
2556 | + isa = PBXTargetDependency; | ||
2557 | + name = cocos2d; | ||
2558 | + targetProxy = B891A2372BCD0799006CB06E /* PBXContainerItemProxy */; | ||
2559 | + }; | ||
2560 | + B891A2482BCD07A0006CB06E /* PBXTargetDependency */ = { | ||
2561 | + isa = PBXTargetDependency; | ||
2562 | + name = ext_clipper; | ||
2563 | + targetProxy = B891A2472BCD07A0006CB06E /* PBXContainerItemProxy */; | ||
2564 | + }; | ||
2565 | + B891A24A2BCD07A4006CB06E /* PBXTargetDependency */ = { | ||
2566 | + isa = PBXTargetDependency; | ||
2567 | + name = ext_convertUTF; | ||
2568 | + targetProxy = B891A2492BCD07A4006CB06E /* PBXContainerItemProxy */; | ||
2569 | + }; | ||
2570 | + B891A24C2BCD07AE006CB06E /* PBXTargetDependency */ = { | ||
2571 | + isa = PBXTargetDependency; | ||
2572 | + name = ext_edtaa3func; | ||
2573 | + targetProxy = B891A24B2BCD07AE006CB06E /* PBXContainerItemProxy */; | ||
2574 | + }; | ||
2575 | + B891A24E2BCD07AE006CB06E /* PBXTargetDependency */ = { | ||
2576 | + isa = PBXTargetDependency; | ||
2577 | + name = ext_md5; | ||
2578 | + targetProxy = B891A24D2BCD07AE006CB06E /* PBXContainerItemProxy */; | ||
2579 | + }; | ||
2580 | + B891A2502BCD07AE006CB06E /* PBXTargetDependency */ = { | ||
2581 | + isa = PBXTargetDependency; | ||
2582 | + name = ext_poly2tri; | ||
2583 | + targetProxy = B891A24F2BCD07AE006CB06E /* PBXContainerItemProxy */; | ||
2584 | + }; | ||
2585 | + B891A2522BCD07AE006CB06E /* PBXTargetDependency */ = { | ||
2586 | + isa = PBXTargetDependency; | ||
2587 | + name = ext_recast; | ||
2588 | + targetProxy = B891A2512BCD07AE006CB06E /* PBXContainerItemProxy */; | ||
2589 | + }; | ||
2590 | + B891A2542BCD07AE006CB06E /* PBXTargetDependency */ = { | ||
2591 | + isa = PBXTargetDependency; | ||
2592 | + name = ext_tinyxml2; | ||
2593 | + targetProxy = B891A2532BCD07AE006CB06E /* PBXContainerItemProxy */; | ||
2594 | + }; | ||
2595 | + B891A2562BCD07AE006CB06E /* PBXTargetDependency */ = { | ||
2596 | + isa = PBXTargetDependency; | ||
2597 | + name = ext_unzip; | ||
2598 | + targetProxy = B891A2552BCD07AE006CB06E /* PBXContainerItemProxy */; | ||
2599 | + }; | ||
2600 | + B891A2582BCD07AE006CB06E /* PBXTargetDependency */ = { | ||
2601 | + isa = PBXTargetDependency; | ||
2602 | + name = ext_xxhash; | ||
2603 | + targetProxy = B891A2572BCD07AE006CB06E /* PBXContainerItemProxy */; | ||
2604 | + }; | ||
2605 | + B891A25A2BCD07AE006CB06E /* PBXTargetDependency */ = { | ||
2606 | + isa = PBXTargetDependency; | ||
2607 | + name = ext_xxtea; | ||
2608 | + targetProxy = B891A2592BCD07AE006CB06E /* PBXContainerItemProxy */; | ||
2609 | + }; | ||
2610 | + B891A25C2BCD07AE006CB06E /* PBXTargetDependency */ = { | ||
2611 | + isa = PBXTargetDependency; | ||
2612 | + name = external; | ||
2613 | + targetProxy = B891A25B2BCD07AE006CB06E /* PBXContainerItemProxy */; | ||
2614 | + }; | ||
621 | /* End PBXTargetDependency section */ | 2615 | /* End PBXTargetDependency section */ |
622 | 2616 | ||
623 | /* Begin PBXVariantGroup section */ | 2617 | /* Begin PBXVariantGroup section */ |
@@ -706,6 +2700,131 @@ | @@ -706,6 +2700,131 @@ | ||
706 | "@executable_path/Frameworks", | 2700 | "@executable_path/Frameworks", |
707 | ); | 2701 | ); |
708 | MARKETING_VERSION = 1.0.2; | 2702 | MARKETING_VERSION = 1.0.2; |
2703 | + OTHER_CFLAGS = ( | ||
2704 | + "-DNDEBUG", | ||
2705 | + "'-std=gnu99'", | ||
2706 | + ); | ||
2707 | + OTHER_CPLUSPLUSFLAGS = ( | ||
2708 | + "-DNDEBUG", | ||
2709 | + "'-std=c++11'", | ||
2710 | + ); | ||
2711 | + OTHER_LDFLAGS = ( | ||
2712 | + "-Wl,-headerpad_max_install_names", | ||
2713 | + $SRCROOT/cocosgame/lib/Release/libext_tinyxml2.a, | ||
2714 | + $SRCROOT/cocosgame/lib/Release/libext_xxhash.a, | ||
2715 | + $SRCROOT/cocosgame/lib/Release/libext_clipper.a, | ||
2716 | + $SRCROOT/cocosgame/lib/Release/libext_edtaa3func.a, | ||
2717 | + $SRCROOT/cocosgame/lib/Release/libext_convertUTF.a, | ||
2718 | + $SRCROOT/cocosgame/lib/Release/libext_recast.a, | ||
2719 | + $SRCROOT/cocosgame/lib/Release/libext_unzip.a, | ||
2720 | + $SRCROOT/cocosgame/lib/Release/libext_poly2tri.a, | ||
2721 | + $SRCROOT/cocosgame/lib/Release/libext_md5.a, | ||
2722 | + $SRCROOT/cocosgame/lib/Release/libext_xxtea.a, | ||
2723 | + $SRCROOT/cocosgame/lib/Release/libexternal.a, | ||
2724 | + $SRCROOT/cocosgame/lib/Release/libcocos2d.a, | ||
2725 | + $SRCROOT/cocos2d/external/chipmunk/prebuilt/ios/libchipmunk.a, | ||
2726 | + $SRCROOT/cocos2d/external/freetype2/prebuilt/ios/libfreetype.a, | ||
2727 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libLinearMath.a, | ||
2728 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libBulletCollision.a, | ||
2729 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libBulletMultiThreaded.a, | ||
2730 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libLinearMath.a, | ||
2731 | + $SRCROOT/cocos2d/external/webp/prebuilt/ios/libwebp.a, | ||
2732 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libMiniCL.a, | ||
2733 | + $SRCROOT/cocos2d/external/jpeg/prebuilt/ios/libjpeg.a, | ||
2734 | + $SRCROOT/cocos2d/external/websockets/prebuilt/ios/libwebsockets.a, | ||
2735 | + $SRCROOT/cocos2d/external/openssl/prebuilt/ios/libssl.a, | ||
2736 | + $SRCROOT/cocos2d/external/openssl/prebuilt/ios/libcrypto.a, | ||
2737 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libBulletDynamics.a, | ||
2738 | + $SRCROOT/cocos2d/external/uv/prebuilt/ios/libuv_a.a, | ||
2739 | + $SRCROOT/cocos2d/external/curl/prebuilt/ios/libcurl.a, | ||
2740 | + "$SRCROOT/cocos2d/external/glsl-optimizer/prebuilt/ios/libglcpp-library.a", | ||
2741 | + $SRCROOT/cocos2d/external/png/prebuilt/ios/libpng.a, | ||
2742 | + "$SRCROOT/cocos2d/external/glsl-optimizer/prebuilt/ios/libglsl_optimizer.a", | ||
2743 | + "$SRCROOT/cocos2d/external/glsl-optimizer/prebuilt/ios/libmesa.a", | ||
2744 | + $SRCROOT/cocos2d/external/Box2D/prebuilt/ios/libbox2d.a, | ||
2745 | + "-framework", | ||
2746 | + OpenGLES, | ||
2747 | + "-framework", | ||
2748 | + CoreMotion, | ||
2749 | + "-framework", | ||
2750 | + AVKit, | ||
2751 | + "-framework", | ||
2752 | + CoreMedia, | ||
2753 | + "-framework", | ||
2754 | + Security, | ||
2755 | + "-framework", | ||
2756 | + CoreGraphics, | ||
2757 | + "-framework", | ||
2758 | + WebKit, | ||
2759 | + "-framework", | ||
2760 | + OpenAL, | ||
2761 | + "-framework", | ||
2762 | + AudioToolbox, | ||
2763 | + "-framework", | ||
2764 | + GameController, | ||
2765 | + "-framework", | ||
2766 | + Metal, | ||
2767 | + "-framework", | ||
2768 | + CoreText, | ||
2769 | + "-framework", | ||
2770 | + Foundation, | ||
2771 | + "-l", | ||
2772 | + iconv, | ||
2773 | + "$(inherited)", | ||
2774 | + "-ObjC", | ||
2775 | + "-l\"c++\"", | ||
2776 | + "-l\"z\"", | ||
2777 | + "-framework", | ||
2778 | + "\"AVFoundation\"", | ||
2779 | + "-framework", | ||
2780 | + "\"CoreTelephony\"", | ||
2781 | + "-framework", | ||
2782 | + "\"MediaPlayer\"", | ||
2783 | + "-framework", | ||
2784 | + "\"QuartzCore\"", | ||
2785 | + "-framework", | ||
2786 | + "\"Reachability\"", | ||
2787 | + "-framework", | ||
2788 | + "\"SingSound\"", | ||
2789 | + "-framework", | ||
2790 | + "\"SystemConfiguration\"", | ||
2791 | + "-framework", | ||
2792 | + "\"Toast\"", | ||
2793 | + "-framework", | ||
2794 | + "\"audio_session\"", | ||
2795 | + "-framework", | ||
2796 | + "\"audioplayers_darwin\"", | ||
2797 | + "-framework", | ||
2798 | + "\"connectivity_plus\"", | ||
2799 | + "-framework", | ||
2800 | + "\"device_info_plus\"", | ||
2801 | + "-framework", | ||
2802 | + "\"flutter_sound\"", | ||
2803 | + "-framework", | ||
2804 | + "\"flutter_sound_core\"", | ||
2805 | + "-framework", | ||
2806 | + "\"fluttertoast\"", | ||
2807 | + "-framework", | ||
2808 | + "\"image_picker_ios\"", | ||
2809 | + "-framework", | ||
2810 | + "\"limiting_direction_csx\"", | ||
2811 | + "-framework", | ||
2812 | + "\"package_info_plus\"", | ||
2813 | + "-framework", | ||
2814 | + "\"path_provider_foundation\"", | ||
2815 | + "-framework", | ||
2816 | + "\"permission_handler_apple\"", | ||
2817 | + "-framework", | ||
2818 | + "\"shared_preferences_foundation\"", | ||
2819 | + "-framework", | ||
2820 | + "\"sqflite\"", | ||
2821 | + "-framework", | ||
2822 | + "\"url_launcher_ios\"", | ||
2823 | + "-framework", | ||
2824 | + "\"video_player_avfoundation\"", | ||
2825 | + "-framework", | ||
2826 | + "\"webview_flutter_wkwebview\"", | ||
2827 | + ); | ||
709 | PRODUCT_BUNDLE_IDENTIFIER = com.kouyuxingqiu.wowenglish; | 2828 | PRODUCT_BUNDLE_IDENTIFIER = com.kouyuxingqiu.wowenglish; |
710 | PRODUCT_NAME = "$(TARGET_NAME)"; | 2829 | PRODUCT_NAME = "$(TARGET_NAME)"; |
711 | SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; | 2830 | SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; |
@@ -714,6 +2833,39 @@ | @@ -714,6 +2833,39 @@ | ||
714 | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | 2833 | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; |
715 | SWIFT_VERSION = 5.0; | 2834 | SWIFT_VERSION = 5.0; |
716 | TARGETED_DEVICE_FAMILY = "1,2"; | 2835 | TARGETED_DEVICE_FAMILY = "1,2"; |
2836 | + USER_HEADER_SEARCH_PATHS = ( | ||
2837 | + $SRCROOT/cocos2d, | ||
2838 | + $SRCROOT/cocos2d/cocos, | ||
2839 | + $SRCROOT/cocos2d/extensions, | ||
2840 | + $SRCROOT/cocos2d/cocos/audio/include, | ||
2841 | + $SRCROOT/cocos2d/cocos/platform, | ||
2842 | + "$SRCROOT/cocos2d/cocos/editor-support", | ||
2843 | + $SRCROOT/cocos2d/cocos/base, | ||
2844 | + $SRCROOT/cocos2d/cocos/platform/ios, | ||
2845 | + $SRCROOT/cocos2d/external/recast/.., | ||
2846 | + $SRCROOT/cocos2d/external/tinyxml2/., | ||
2847 | + $SRCROOT/cocos2d/external/xxhash/., | ||
2848 | + $SRCROOT/cocos2d/external/xxtea/., | ||
2849 | + $SRCROOT/cocos2d/external/clipper/., | ||
2850 | + $SRCROOT/cocos2d/external/edtaa3func/., | ||
2851 | + $SRCROOT/cocos2d/external/ConvertUTF/., | ||
2852 | + $SRCROOT/cocos2d/external/poly2tri/.., | ||
2853 | + $SRCROOT/cocos2d/external/md5/.., | ||
2854 | + $SRCROOT/cocos2d/external/unzip/., | ||
2855 | + $SRCROOT/cocos2d/external/Box2D/include, | ||
2856 | + $SRCROOT/cocos2d/external/chipmunk/include, | ||
2857 | + $SRCROOT/cocos2d/external/freetype2/include/ios/freetype2, | ||
2858 | + $SRCROOT/cocos2d/external/bullet/include, | ||
2859 | + $SRCROOT/cocos2d/external/bullet/include/bullet, | ||
2860 | + $SRCROOT/cocos2d/external/jpeg/include/ios, | ||
2861 | + $SRCROOT/cocos2d/external/openssl/include/ios, | ||
2862 | + $SRCROOT/cocos2d/external/uv/include, | ||
2863 | + $SRCROOT/cocos2d/external/webp/include/ios, | ||
2864 | + $SRCROOT/cocos2d/external/websockets/include/ios, | ||
2865 | + $SRCROOT/cocos2d/external/curl/include/ios, | ||
2866 | + $SRCROOT/cocos2d/external/png/include/ios, | ||
2867 | + "$SRCROOT/cocos2d/external/glsl-optimizer/include", | ||
2868 | + ); | ||
717 | VERSIONING_SYSTEM = "apple-generic"; | 2869 | VERSIONING_SYSTEM = "apple-generic"; |
718 | }; | 2870 | }; |
719 | name = Profile; | 2871 | name = Profile; |
@@ -885,12 +3037,154 @@ | @@ -885,12 +3037,154 @@ | ||
885 | CURRENT_PROJECT_VERSION = 2; | 3037 | CURRENT_PROJECT_VERSION = 2; |
886 | DEVELOPMENT_TEAM = T8P9KW8GWH; | 3038 | DEVELOPMENT_TEAM = T8P9KW8GWH; |
887 | ENABLE_BITCODE = NO; | 3039 | ENABLE_BITCODE = NO; |
3040 | + HEADER_SEARCH_PATHS = ( | ||
3041 | + "$(inherited)", | ||
3042 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/ReachabilitySwift/Reachability.framework/Headers\"", | ||
3043 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/Toast/Toast.framework/Headers\"", | ||
3044 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/audio_session/audio_session.framework/Headers\"", | ||
3045 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/audioplayers_darwin/audioplayers_darwin.framework/Headers\"", | ||
3046 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/connectivity_plus/connectivity_plus.framework/Headers\"", | ||
3047 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/device_info_plus/device_info_plus.framework/Headers\"", | ||
3048 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/flutter_sound/flutter_sound.framework/Headers\"", | ||
3049 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/flutter_sound_core/flutter_sound_core.framework/Headers\"", | ||
3050 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/fluttertoast/fluttertoast.framework/Headers\"", | ||
3051 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/image_picker_ios/image_picker_ios.framework/Headers\"", | ||
3052 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/limiting_direction_csx/limiting_direction_csx.framework/Headers\"", | ||
3053 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/package_info_plus/package_info_plus.framework/Headers\"", | ||
3054 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/path_provider_foundation/path_provider_foundation.framework/Headers\"", | ||
3055 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/permission_handler_apple/permission_handler_apple.framework/Headers\"", | ||
3056 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/shared_preferences_foundation/shared_preferences_foundation.framework/Headers\"", | ||
3057 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/sqflite/sqflite.framework/Headers\"", | ||
3058 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/url_launcher_ios/url_launcher_ios.framework/Headers\"", | ||
3059 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/video_player_avfoundation/video_player_avfoundation.framework/Headers\"", | ||
3060 | + "\"${PODS_CONFIGURATION_BUILD_DIR}/webview_flutter_wkwebview/webview_flutter_wkwebview.framework/Headers\"", | ||
3061 | + ); | ||
888 | INFOPLIST_FILE = Runner/Info.plist; | 3062 | INFOPLIST_FILE = Runner/Info.plist; |
889 | LD_RUNPATH_SEARCH_PATHS = ( | 3063 | LD_RUNPATH_SEARCH_PATHS = ( |
890 | "$(inherited)", | 3064 | "$(inherited)", |
891 | "@executable_path/Frameworks", | 3065 | "@executable_path/Frameworks", |
892 | ); | 3066 | ); |
893 | MARKETING_VERSION = 1.0.2; | 3067 | MARKETING_VERSION = 1.0.2; |
3068 | + ONLY_ACTIVE_ARCH = NO; | ||
3069 | + OTHER_CFLAGS = "'-std=gnu99'"; | ||
3070 | + OTHER_CPLUSPLUSFLAGS = "'-std=c++11'"; | ||
3071 | + OTHER_LDFLAGS = ( | ||
3072 | + "-Wl,-headerpad_max_install_names", | ||
3073 | + $SRCROOT/cocosgame/lib/Debug/libext_tinyxml2.a, | ||
3074 | + $SRCROOT/cocosgame/lib/Debug/libext_xxhash.a, | ||
3075 | + $SRCROOT/cocosgame/lib/Debug/libext_clipper.a, | ||
3076 | + $SRCROOT/cocosgame/lib/Debug/libext_edtaa3func.a, | ||
3077 | + $SRCROOT/cocosgame/lib/Debug/libext_convertUTF.a, | ||
3078 | + $SRCROOT/cocosgame/lib/Debug/libext_recast.a, | ||
3079 | + $SRCROOT/cocosgame/lib/Debug/libext_unzip.a, | ||
3080 | + $SRCROOT/cocosgame/lib/Debug/libext_poly2tri.a, | ||
3081 | + $SRCROOT/cocosgame/lib/Debug/libext_md5.a, | ||
3082 | + $SRCROOT/cocosgame/lib/Debug/libext_xxtea.a, | ||
3083 | + $SRCROOT/cocosgame/lib/Debug/libexternal.a, | ||
3084 | + $SRCROOT/cocosgame/lib/Debug/libcocos2d.a, | ||
3085 | + $SRCROOT/cocos2d/external/chipmunk/prebuilt/ios/libchipmunk.a, | ||
3086 | + $SRCROOT/cocos2d/external/freetype2/prebuilt/ios/libfreetype.a, | ||
3087 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libLinearMath.a, | ||
3088 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libBulletCollision.a, | ||
3089 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libBulletMultiThreaded.a, | ||
3090 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libLinearMath.a, | ||
3091 | + $SRCROOT/cocos2d/external/webp/prebuilt/ios/libwebp.a, | ||
3092 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libMiniCL.a, | ||
3093 | + $SRCROOT/cocos2d/external/jpeg/prebuilt/ios/libjpeg.a, | ||
3094 | + $SRCROOT/cocos2d/external/websockets/prebuilt/ios/libwebsockets.a, | ||
3095 | + $SRCROOT/cocos2d/external/openssl/prebuilt/ios/libssl.a, | ||
3096 | + $SRCROOT/cocos2d/external/openssl/prebuilt/ios/libcrypto.a, | ||
3097 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libBulletDynamics.a, | ||
3098 | + $SRCROOT/cocos2d/external/uv/prebuilt/ios/libuv_a.a, | ||
3099 | + $SRCROOT/cocos2d/external/curl/prebuilt/ios/libcurl.a, | ||
3100 | + "$SRCROOT/cocos2d/external/glsl-optimizer/prebuilt/ios/libglcpp-library.a", | ||
3101 | + $SRCROOT/cocos2d/external/png/prebuilt/ios/libpng.a, | ||
3102 | + "$SRCROOT/cocos2d/external/glsl-optimizer/prebuilt/ios/libglsl_optimizer.a", | ||
3103 | + "$SRCROOT/cocos2d/external/glsl-optimizer/prebuilt/ios/libmesa.a", | ||
3104 | + $SRCROOT/cocos2d/external/Box2D/prebuilt/ios/libbox2d.a, | ||
3105 | + "-framework", | ||
3106 | + OpenGLES, | ||
3107 | + "-framework", | ||
3108 | + CoreMotion, | ||
3109 | + "-framework", | ||
3110 | + AVKit, | ||
3111 | + "-framework", | ||
3112 | + CoreMedia, | ||
3113 | + "-framework", | ||
3114 | + Security, | ||
3115 | + "-framework", | ||
3116 | + CoreGraphics, | ||
3117 | + "-framework", | ||
3118 | + WebKit, | ||
3119 | + "-framework", | ||
3120 | + OpenAL, | ||
3121 | + "-framework", | ||
3122 | + AudioToolbox, | ||
3123 | + "-framework", | ||
3124 | + GameController, | ||
3125 | + "-framework", | ||
3126 | + Metal, | ||
3127 | + "-framework", | ||
3128 | + CoreText, | ||
3129 | + "-framework", | ||
3130 | + Foundation, | ||
3131 | + "-l", | ||
3132 | + iconv, | ||
3133 | + "$(inherited)", | ||
3134 | + "-ObjC", | ||
3135 | + "-l\"c++\"", | ||
3136 | + "-l\"z\"", | ||
3137 | + "-framework", | ||
3138 | + "\"AVFoundation\"", | ||
3139 | + "-framework", | ||
3140 | + "\"CoreTelephony\"", | ||
3141 | + "-framework", | ||
3142 | + "\"MediaPlayer\"", | ||
3143 | + "-framework", | ||
3144 | + "\"QuartzCore\"", | ||
3145 | + "-framework", | ||
3146 | + "\"Reachability\"", | ||
3147 | + "-framework", | ||
3148 | + "\"SingSound\"", | ||
3149 | + "-framework", | ||
3150 | + "\"SystemConfiguration\"", | ||
3151 | + "-framework", | ||
3152 | + "\"Toast\"", | ||
3153 | + "-framework", | ||
3154 | + "\"audio_session\"", | ||
3155 | + "-framework", | ||
3156 | + "\"audioplayers_darwin\"", | ||
3157 | + "-framework", | ||
3158 | + "\"connectivity_plus\"", | ||
3159 | + "-framework", | ||
3160 | + "\"device_info_plus\"", | ||
3161 | + "-framework", | ||
3162 | + "\"flutter_sound\"", | ||
3163 | + "-framework", | ||
3164 | + "\"flutter_sound_core\"", | ||
3165 | + "-framework", | ||
3166 | + "\"fluttertoast\"", | ||
3167 | + "-framework", | ||
3168 | + "\"image_picker_ios\"", | ||
3169 | + "-framework", | ||
3170 | + "\"limiting_direction_csx\"", | ||
3171 | + "-framework", | ||
3172 | + "\"package_info_plus\"", | ||
3173 | + "-framework", | ||
3174 | + "\"path_provider_foundation\"", | ||
3175 | + "-framework", | ||
3176 | + "\"permission_handler_apple\"", | ||
3177 | + "-framework", | ||
3178 | + "\"shared_preferences_foundation\"", | ||
3179 | + "-framework", | ||
3180 | + "\"sqflite\"", | ||
3181 | + "-framework", | ||
3182 | + "\"url_launcher_ios\"", | ||
3183 | + "-framework", | ||
3184 | + "\"video_player_avfoundation\"", | ||
3185 | + "-framework", | ||
3186 | + "\"webview_flutter_wkwebview\"", | ||
3187 | + ); | ||
894 | PRODUCT_BUNDLE_IDENTIFIER = com.kouyuxingqiu.wowenglish; | 3188 | PRODUCT_BUNDLE_IDENTIFIER = com.kouyuxingqiu.wowenglish; |
895 | PRODUCT_NAME = "$(TARGET_NAME)"; | 3189 | PRODUCT_NAME = "$(TARGET_NAME)"; |
896 | SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; | 3190 | SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; |
@@ -900,6 +3194,39 @@ | @@ -900,6 +3194,39 @@ | ||
900 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; | 3194 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; |
901 | SWIFT_VERSION = 5.0; | 3195 | SWIFT_VERSION = 5.0; |
902 | TARGETED_DEVICE_FAMILY = "1,2"; | 3196 | TARGETED_DEVICE_FAMILY = "1,2"; |
3197 | + USER_HEADER_SEARCH_PATHS = ( | ||
3198 | + $SRCROOT/cocos2d, | ||
3199 | + $SRCROOT/cocos2d/cocos, | ||
3200 | + $SRCROOT/cocos2d/extensions, | ||
3201 | + $SRCROOT/cocos2d/cocos/audio/include, | ||
3202 | + $SRCROOT/cocos2d/cocos/platform, | ||
3203 | + "$SRCROOT/cocos2d/cocos/editor-support", | ||
3204 | + $SRCROOT/cocos2d/cocos/base, | ||
3205 | + $SRCROOT/cocos2d/cocos/platform/ios, | ||
3206 | + $SRCROOT/cocos2d/external/recast/.., | ||
3207 | + $SRCROOT/cocos2d/external/tinyxml2/., | ||
3208 | + $SRCROOT/cocos2d/external/xxhash/., | ||
3209 | + $SRCROOT/cocos2d/external/xxtea/., | ||
3210 | + $SRCROOT/cocos2d/external/clipper/., | ||
3211 | + $SRCROOT/cocos2d/external/edtaa3func/., | ||
3212 | + $SRCROOT/cocos2d/external/ConvertUTF/., | ||
3213 | + $SRCROOT/cocos2d/external/poly2tri/.., | ||
3214 | + $SRCROOT/cocos2d/external/md5/.., | ||
3215 | + $SRCROOT/cocos2d/external/unzip/., | ||
3216 | + $SRCROOT/cocos2d/external/Box2D/include, | ||
3217 | + $SRCROOT/cocos2d/external/chipmunk/include, | ||
3218 | + $SRCROOT/cocos2d/external/freetype2/include/ios/freetype2, | ||
3219 | + $SRCROOT/cocos2d/external/bullet/include, | ||
3220 | + $SRCROOT/cocos2d/external/bullet/include/bullet, | ||
3221 | + $SRCROOT/cocos2d/external/jpeg/include/ios, | ||
3222 | + $SRCROOT/cocos2d/external/openssl/include/ios, | ||
3223 | + $SRCROOT/cocos2d/external/uv/include, | ||
3224 | + $SRCROOT/cocos2d/external/webp/include/ios, | ||
3225 | + $SRCROOT/cocos2d/external/websockets/include/ios, | ||
3226 | + $SRCROOT/cocos2d/external/curl/include/ios, | ||
3227 | + $SRCROOT/cocos2d/external/png/include/ios, | ||
3228 | + "$SRCROOT/cocos2d/external/glsl-optimizer/include", | ||
3229 | + ); | ||
903 | VERSIONING_SYSTEM = "apple-generic"; | 3230 | VERSIONING_SYSTEM = "apple-generic"; |
904 | }; | 3231 | }; |
905 | name = Debug; | 3232 | name = Debug; |
@@ -920,6 +3247,131 @@ | @@ -920,6 +3247,131 @@ | ||
920 | "@executable_path/Frameworks", | 3247 | "@executable_path/Frameworks", |
921 | ); | 3248 | ); |
922 | MARKETING_VERSION = 1.0.2; | 3249 | MARKETING_VERSION = 1.0.2; |
3250 | + OTHER_CFLAGS = ( | ||
3251 | + "-DNDEBUG", | ||
3252 | + "'-std=gnu99'", | ||
3253 | + ); | ||
3254 | + OTHER_CPLUSPLUSFLAGS = ( | ||
3255 | + "-DNDEBUG", | ||
3256 | + "'-std=c++11'", | ||
3257 | + ); | ||
3258 | + OTHER_LDFLAGS = ( | ||
3259 | + "-Wl,-headerpad_max_install_names", | ||
3260 | + $SRCROOT/cocosgame/lib/Release/libext_tinyxml2.a, | ||
3261 | + $SRCROOT/cocosgame/lib/Release/libext_xxhash.a, | ||
3262 | + $SRCROOT/cocosgame/lib/Release/libext_clipper.a, | ||
3263 | + $SRCROOT/cocosgame/lib/Release/libext_edtaa3func.a, | ||
3264 | + $SRCROOT/cocosgame/lib/Release/libext_convertUTF.a, | ||
3265 | + $SRCROOT/cocosgame/lib/Release/libext_recast.a, | ||
3266 | + $SRCROOT/cocosgame/lib/Release/libext_unzip.a, | ||
3267 | + $SRCROOT/cocosgame/lib/Release/libext_poly2tri.a, | ||
3268 | + $SRCROOT/cocosgame/lib/Release/libext_md5.a, | ||
3269 | + $SRCROOT/cocosgame/lib/Release/libext_xxtea.a, | ||
3270 | + $SRCROOT/cocosgame/lib/Release/libexternal.a, | ||
3271 | + $SRCROOT/cocosgame/lib/Release/libcocos2d.a, | ||
3272 | + $SRCROOT/cocos2d/external/chipmunk/prebuilt/ios/libchipmunk.a, | ||
3273 | + $SRCROOT/cocos2d/external/freetype2/prebuilt/ios/libfreetype.a, | ||
3274 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libLinearMath.a, | ||
3275 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libBulletCollision.a, | ||
3276 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libBulletMultiThreaded.a, | ||
3277 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libLinearMath.a, | ||
3278 | + $SRCROOT/cocos2d/external/webp/prebuilt/ios/libwebp.a, | ||
3279 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libMiniCL.a, | ||
3280 | + $SRCROOT/cocos2d/external/jpeg/prebuilt/ios/libjpeg.a, | ||
3281 | + $SRCROOT/cocos2d/external/websockets/prebuilt/ios/libwebsockets.a, | ||
3282 | + $SRCROOT/cocos2d/external/openssl/prebuilt/ios/libssl.a, | ||
3283 | + $SRCROOT/cocos2d/external/openssl/prebuilt/ios/libcrypto.a, | ||
3284 | + $SRCROOT/cocos2d/external/bullet/prebuilt/ios/libBulletDynamics.a, | ||
3285 | + $SRCROOT/cocos2d/external/uv/prebuilt/ios/libuv_a.a, | ||
3286 | + $SRCROOT/cocos2d/external/curl/prebuilt/ios/libcurl.a, | ||
3287 | + "$SRCROOT/cocos2d/external/glsl-optimizer/prebuilt/ios/libglcpp-library.a", | ||
3288 | + $SRCROOT/cocos2d/external/png/prebuilt/ios/libpng.a, | ||
3289 | + "$SRCROOT/cocos2d/external/glsl-optimizer/prebuilt/ios/libglsl_optimizer.a", | ||
3290 | + "$SRCROOT/cocos2d/external/glsl-optimizer/prebuilt/ios/libmesa.a", | ||
3291 | + $SRCROOT/cocos2d/external/Box2D/prebuilt/ios/libbox2d.a, | ||
3292 | + "-framework", | ||
3293 | + OpenGLES, | ||
3294 | + "-framework", | ||
3295 | + CoreMotion, | ||
3296 | + "-framework", | ||
3297 | + AVKit, | ||
3298 | + "-framework", | ||
3299 | + CoreMedia, | ||
3300 | + "-framework", | ||
3301 | + Security, | ||
3302 | + "-framework", | ||
3303 | + CoreGraphics, | ||
3304 | + "-framework", | ||
3305 | + WebKit, | ||
3306 | + "-framework", | ||
3307 | + OpenAL, | ||
3308 | + "-framework", | ||
3309 | + AudioToolbox, | ||
3310 | + "-framework", | ||
3311 | + GameController, | ||
3312 | + "-framework", | ||
3313 | + Metal, | ||
3314 | + "-framework", | ||
3315 | + CoreText, | ||
3316 | + "-framework", | ||
3317 | + Foundation, | ||
3318 | + "-l", | ||
3319 | + iconv, | ||
3320 | + "$(inherited)", | ||
3321 | + "-ObjC", | ||
3322 | + "-l\"c++\"", | ||
3323 | + "-l\"z\"", | ||
3324 | + "-framework", | ||
3325 | + "\"AVFoundation\"", | ||
3326 | + "-framework", | ||
3327 | + "\"CoreTelephony\"", | ||
3328 | + "-framework", | ||
3329 | + "\"MediaPlayer\"", | ||
3330 | + "-framework", | ||
3331 | + "\"QuartzCore\"", | ||
3332 | + "-framework", | ||
3333 | + "\"Reachability\"", | ||
3334 | + "-framework", | ||
3335 | + "\"SingSound\"", | ||
3336 | + "-framework", | ||
3337 | + "\"SystemConfiguration\"", | ||
3338 | + "-framework", | ||
3339 | + "\"Toast\"", | ||
3340 | + "-framework", | ||
3341 | + "\"audio_session\"", | ||
3342 | + "-framework", | ||
3343 | + "\"audioplayers_darwin\"", | ||
3344 | + "-framework", | ||
3345 | + "\"connectivity_plus\"", | ||
3346 | + "-framework", | ||
3347 | + "\"device_info_plus\"", | ||
3348 | + "-framework", | ||
3349 | + "\"flutter_sound\"", | ||
3350 | + "-framework", | ||
3351 | + "\"flutter_sound_core\"", | ||
3352 | + "-framework", | ||
3353 | + "\"fluttertoast\"", | ||
3354 | + "-framework", | ||
3355 | + "\"image_picker_ios\"", | ||
3356 | + "-framework", | ||
3357 | + "\"limiting_direction_csx\"", | ||
3358 | + "-framework", | ||
3359 | + "\"package_info_plus\"", | ||
3360 | + "-framework", | ||
3361 | + "\"path_provider_foundation\"", | ||
3362 | + "-framework", | ||
3363 | + "\"permission_handler_apple\"", | ||
3364 | + "-framework", | ||
3365 | + "\"shared_preferences_foundation\"", | ||
3366 | + "-framework", | ||
3367 | + "\"sqflite\"", | ||
3368 | + "-framework", | ||
3369 | + "\"url_launcher_ios\"", | ||
3370 | + "-framework", | ||
3371 | + "\"video_player_avfoundation\"", | ||
3372 | + "-framework", | ||
3373 | + "\"webview_flutter_wkwebview\"", | ||
3374 | + ); | ||
923 | PRODUCT_BUNDLE_IDENTIFIER = com.kouyuxingqiu.wowenglish; | 3375 | PRODUCT_BUNDLE_IDENTIFIER = com.kouyuxingqiu.wowenglish; |
924 | PRODUCT_NAME = "$(TARGET_NAME)"; | 3376 | PRODUCT_NAME = "$(TARGET_NAME)"; |
925 | SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; | 3377 | SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; |
@@ -928,6 +3380,39 @@ | @@ -928,6 +3380,39 @@ | ||
928 | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | 3380 | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; |
929 | SWIFT_VERSION = 5.0; | 3381 | SWIFT_VERSION = 5.0; |
930 | TARGETED_DEVICE_FAMILY = "1,2"; | 3382 | TARGETED_DEVICE_FAMILY = "1,2"; |
3383 | + USER_HEADER_SEARCH_PATHS = ( | ||
3384 | + $SRCROOT/cocos2d, | ||
3385 | + $SRCROOT/cocos2d/cocos, | ||
3386 | + $SRCROOT/cocos2d/extensions, | ||
3387 | + $SRCROOT/cocos2d/cocos/audio/include, | ||
3388 | + $SRCROOT/cocos2d/cocos/platform, | ||
3389 | + "$SRCROOT/cocos2d/cocos/editor-support", | ||
3390 | + $SRCROOT/cocos2d/cocos/base, | ||
3391 | + $SRCROOT/cocos2d/cocos/platform/ios, | ||
3392 | + $SRCROOT/cocos2d/external/recast/.., | ||
3393 | + $SRCROOT/cocos2d/external/tinyxml2/., | ||
3394 | + $SRCROOT/cocos2d/external/xxhash/., | ||
3395 | + $SRCROOT/cocos2d/external/xxtea/., | ||
3396 | + $SRCROOT/cocos2d/external/clipper/., | ||
3397 | + $SRCROOT/cocos2d/external/edtaa3func/., | ||
3398 | + $SRCROOT/cocos2d/external/ConvertUTF/., | ||
3399 | + $SRCROOT/cocos2d/external/poly2tri/.., | ||
3400 | + $SRCROOT/cocos2d/external/md5/.., | ||
3401 | + $SRCROOT/cocos2d/external/unzip/., | ||
3402 | + $SRCROOT/cocos2d/external/Box2D/include, | ||
3403 | + $SRCROOT/cocos2d/external/chipmunk/include, | ||
3404 | + $SRCROOT/cocos2d/external/freetype2/include/ios/freetype2, | ||
3405 | + $SRCROOT/cocos2d/external/bullet/include, | ||
3406 | + $SRCROOT/cocos2d/external/bullet/include/bullet, | ||
3407 | + $SRCROOT/cocos2d/external/jpeg/include/ios, | ||
3408 | + $SRCROOT/cocos2d/external/openssl/include/ios, | ||
3409 | + $SRCROOT/cocos2d/external/uv/include, | ||
3410 | + $SRCROOT/cocos2d/external/webp/include/ios, | ||
3411 | + $SRCROOT/cocos2d/external/websockets/include/ios, | ||
3412 | + $SRCROOT/cocos2d/external/curl/include/ios, | ||
3413 | + $SRCROOT/cocos2d/external/png/include/ios, | ||
3414 | + "$SRCROOT/cocos2d/external/glsl-optimizer/include", | ||
3415 | + ); | ||
931 | VERSIONING_SYSTEM = "apple-generic"; | 3416 | VERSIONING_SYSTEM = "apple-generic"; |
932 | }; | 3417 | }; |
933 | name = Release; | 3418 | name = Release; |
ios/Runner/Wowgame/Classes/AndroidUtils_cpp.h
0 → 100644
ios/Runner/Wowgame/Classes/AppDelegate.cpp
0 → 100644
1 | +/**************************************************************************** | ||
2 | + Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. | ||
3 | + | ||
4 | + http://www.cocos2d-x.org | ||
5 | + | ||
6 | + Permission is hereby granted, free of charge, to any person obtaining a copy | ||
7 | + of this software and associated documentation files (the "Software"), to deal | ||
8 | + in the Software without restriction, including without limitation the rights | ||
9 | + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
10 | + copies of the Software, and to permit persons to whom the Software is | ||
11 | + furnished to do so, subject to the following conditions: | ||
12 | + | ||
13 | + The above copyright notice and this permission notice shall be included in | ||
14 | + all copies or substantial portions of the Software. | ||
15 | + | ||
16 | + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
17 | + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
18 | + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
19 | + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
20 | + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
21 | + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||
22 | + THE SOFTWARE. | ||
23 | + ****************************************************************************/ | ||
24 | + | ||
25 | +#include "AppDelegate.h" | ||
26 | +#include "GameConfigParser.h" | ||
27 | +#include "ResourcesConfig.h" | ||
28 | +#include "MiscUtils.h" | ||
29 | +#include "SoundsRepo.h" | ||
30 | +#include "ScalingUtils.h" | ||
31 | + | ||
32 | + #define USE_AUDIO_ENGINE 1 | ||
33 | + | ||
34 | +#if USE_AUDIO_ENGINE | ||
35 | +#include "audio/include/AudioEngine.h" | ||
36 | +#endif | ||
37 | + | ||
38 | +USING_NS_CC; | ||
39 | + | ||
40 | +static cocos2d::Size designResolutionSize = cocos2d::Size(2732, 2048); | ||
41 | +static cocos2d::Size tinyResolutionSize = cocos2d::Size(1366, 1024); | ||
42 | + | ||
43 | +AppDelegate::AppDelegate() | ||
44 | +{ | ||
45 | +} | ||
46 | + | ||
47 | +AppDelegate::~AppDelegate() | ||
48 | +{ | ||
49 | + AudioEngine::end(); | ||
50 | +} | ||
51 | + | ||
52 | +// if you want a different context, modify the value of glContextAttrs | ||
53 | +// it will affect all platforms | ||
54 | +void AppDelegate::initGLContextAttrs() | ||
55 | +{ | ||
56 | + // set OpenGL context attributes: red,green,blue,alpha,depth,stencil,multisamplesCount | ||
57 | + GLContextAttrs glContextAttrs = {8, 8, 8, 8, 24, 8, 0}; | ||
58 | + | ||
59 | + GLView::setGLContextAttrs(glContextAttrs); | ||
60 | +} | ||
61 | + | ||
62 | +// if you want to use the package manager to install more packages, | ||
63 | +// don't modify or remove this function | ||
64 | +static int register_all_packages() | ||
65 | +{ | ||
66 | + return 0; //flag for packages manager | ||
67 | +} | ||
68 | + | ||
69 | +bool AppDelegate::applicationDidFinishLaunching() { | ||
70 | + | ||
71 | + // initialize director | ||
72 | + auto director = Director::getInstance(); | ||
73 | + auto glview = director->getOpenGLView(); | ||
74 | + if(!glview) { | ||
75 | + glview = GLViewImpl::create("Steve and Maggie Food App"); | ||
76 | + director->setOpenGLView(glview); | ||
77 | + } | ||
78 | + | ||
79 | + // turn on display FPS | ||
80 | +// director->setDisplayStats(true); //TODO remove this | ||
81 | + | ||
82 | + auto searchPaths = cocos2d::FileUtils::getInstance()->getSearchPaths(); | ||
83 | +// std::string deviceSpecificFolderName; | ||
84 | + | ||
85 | +// auto frameSize = glview->getFrameSize(); | ||
86 | + // if the frame's height is larger than the height of medium size. | ||
87 | +// if (frameSize.height > xlargeResolutionSize.height) | ||
88 | +// { | ||
89 | +// deviceSpecificFolderName = ResourcesConfig::RES_FOLDER_NAME_XLARGE; | ||
90 | +// } | ||
91 | +// // if the frame's height is larger than the height of small size. | ||
92 | +// else if (frameSize.height > largeResolutionSize.height) | ||
93 | +// { | ||
94 | +// deviceSpecificFolderName = ResourcesConfig::RES_FOLDER_NAME_XLARGE; //TODO change to large once the resurces are ready | ||
95 | +// } | ||
96 | +// // if the frame's height is smaller than the height of medium size. | ||
97 | +// else | ||
98 | +// { | ||
99 | +// deviceSpecificFolderName = ResourcesConfig::RES_FOLDER_NAME_MEDIUM; | ||
100 | +// } | ||
101 | + | ||
102 | +// deviceSpecificFolderName = ScalingUtils::isSmallDevice() ? ResourcesConfig::RES_FOLDER_NAME_TINY : ResourcesConfig::RES_FOLDER_NAME_XLARGE;//TODO TEMP | ||
103 | + searchPaths.push_back("res"); | ||
104 | + if(ScalingUtils::isSmallDevice()){ | ||
105 | + searchPaths.push_back("res/" + std::string(ResourcesConfig::RES_FOLDER_NAME_TINY)); | ||
106 | + searchPaths.push_back("res/" + std::string(ResourcesConfig::RES_FOLDER_NAME_XLARGE)); | ||
107 | + } else { | ||
108 | + searchPaths.push_back("res/" + std::string(ResourcesConfig::RES_FOLDER_NAME_XLARGE)); | ||
109 | + } | ||
110 | + searchPaths.push_back("res/common"); | ||
111 | + | ||
112 | + cocos2d::FileUtils::getInstance()->setSearchPaths(searchPaths); | ||
113 | + | ||
114 | + auto screenSizePoints = director->getWinSize(); | ||
115 | + | ||
116 | + auto scale = ScalingUtils::isSmallDevice() ? MAX(tinyResolutionSize.width / screenSizePoints.width, tinyResolutionSize.height / screenSizePoints.height) : MAX(designResolutionSize.width / screenSizePoints.width, designResolutionSize.height / screenSizePoints.height); | ||
117 | + director->setContentScaleFactor(scale); | ||
118 | + | ||
119 | + register_all_packages(); | ||
120 | + | ||
121 | +// SoundsRepo::loadSoundsList(); | ||
122 | + | ||
123 | + srand(time(0)); | ||
124 | + | ||
125 | + // run | ||
126 | + std::string sceneLayoutPath = "graphics/shoot_game/scene_layout.scl"; | ||
127 | + GameConfigParser parser("res/common/games/shoot_game/gconfig.gcf"); | ||
128 | + auto newScene = parser.createGameScene(45, sceneLayoutPath); | ||
129 | + director->runWithScene(newScene); | ||
130 | + | ||
131 | + return true; | ||
132 | +} | ||
133 | + | ||
134 | +// This function will be called when the app is inactive. Note, when receiving a phone call it is invoked. | ||
135 | +void AppDelegate::applicationDidEnterBackground() { | ||
136 | + Director::getInstance()->stopAnimation(); | ||
137 | + cocos2d::AudioEngine::pauseAll(); | ||
138 | + | ||
139 | +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) | ||
140 | + MiscUtils::closeAppCloseConfirmDialogIfNecessary(); | ||
141 | +#endif | ||
142 | + auto runningGame = dynamic_cast<SubGameScene*>(cocos2d::Director::getInstance()->getRunningScene()); | ||
143 | + if(runningGame){ | ||
144 | + runningGame->presentGameResumeLayer(); | ||
145 | + } | ||
146 | +} | ||
147 | + | ||
148 | +// this function will be called when the app is active again | ||
149 | +void AppDelegate::applicationWillEnterForeground() { | ||
150 | + Director::getInstance()->startAnimation(); | ||
151 | + auto runningGame = dynamic_cast<SubGameScene*>(cocos2d::Director::getInstance()->getRunningScene()); | ||
152 | + if(!runningGame->isPaused()){ | ||
153 | + cocos2d::AudioEngine::resumeAll(); | ||
154 | + } | ||
155 | +} |
ios/Runner/Wowgame/Classes/AppDelegate.h
0 → 100644
1 | +/**************************************************************************** | ||
2 | + Copyright (c) 2017-2018 Xiamen Yaji Software Co., Ltd. | ||
3 | + | ||
4 | + http://www.cocos2d-x.org | ||
5 | + | ||
6 | + Permission is hereby granted, free of charge, to any person obtaining a copy | ||
7 | + of this software and associated documentation files (the "Software"), to deal | ||
8 | + in the Software without restriction, including without limitation the rights | ||
9 | + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
10 | + copies of the Software, and to permit persons to whom the Software is | ||
11 | + furnished to do so, subject to the following conditions: | ||
12 | + | ||
13 | + The above copyright notice and this permission notice shall be included in | ||
14 | + all copies or substantial portions of the Software. | ||
15 | + | ||
16 | + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
17 | + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
18 | + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
19 | + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
20 | + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
21 | + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||
22 | + THE SOFTWARE. | ||
23 | + ****************************************************************************/ | ||
24 | + | ||
25 | +#ifndef _APP_DELEGATE_H_ | ||
26 | +#define _APP_DELEGATE_H_ | ||
27 | + | ||
28 | +#include "cocos2d.h" | ||
29 | + | ||
30 | +/** | ||
31 | +@brief The cocos2d Application. | ||
32 | + | ||
33 | +Private inheritance here hides part of interface from Director. | ||
34 | +*/ | ||
35 | +class AppDelegate : private cocos2d::Application | ||
36 | +{ | ||
37 | +public: | ||
38 | + AppDelegate(); | ||
39 | + virtual ~AppDelegate(); | ||
40 | + | ||
41 | + virtual void initGLContextAttrs(); | ||
42 | + | ||
43 | + /** | ||
44 | + @brief Implement Director and Scene init code here. | ||
45 | + @return true Initialize success, app continue. | ||
46 | + @return false Initialize failed, app terminate. | ||
47 | + */ | ||
48 | + virtual bool applicationDidFinishLaunching(); | ||
49 | + | ||
50 | + /** | ||
51 | + @brief Called when the application moves to the background | ||
52 | + @param the pointer of the application | ||
53 | + */ | ||
54 | + virtual void applicationDidEnterBackground(); | ||
55 | + | ||
56 | + /** | ||
57 | + @brief Called when the application reenters the foreground | ||
58 | + @param the pointer of the application | ||
59 | + */ | ||
60 | + virtual void applicationWillEnterForeground(); | ||
61 | + | ||
62 | +//protected: | ||
63 | +}; | ||
64 | + | ||
65 | +#endif // _APP_DELEGATE_H_ | ||
66 | + |
ios/Runner/Wowgame/Classes/CustomViews/AlertView.cpp
0 → 100644
1 | +// | ||
2 | +// AlertView.cpp | ||
3 | +// Steve and Maggie Halloween | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 09/10/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#include <stdio.h> | ||
9 | +#include "AlertView.h" | ||
10 | +#include "ScalingUtils.h" | ||
11 | +#include "../../cocos2d/cocos/2d/CCActionInterval.h" | ||
12 | +#include "../../cocos2d/cocos/2d/CCActionInstant.h" | ||
13 | +#include "../../cocos2d/cocos/2d/CCNode.h" | ||
14 | +#include "../Utils/MiscUtils.h" | ||
15 | + | ||
16 | +//AlertView* AlertView::create(std::string message, std::string okText, cocos2d::Color3B okColor, std::function<void()> onConfirmCallback,){ | ||
17 | +// | ||
18 | +// AlertView * view = new (std::nothrow) AlertView(); | ||
19 | +// if(view && view->init(message, okText, okColor, onConfirmCallback)) | ||
20 | +// { | ||
21 | +// view->autorelease(); | ||
22 | +// return view; | ||
23 | +// } | ||
24 | +// CC_SAFE_DELETE(view); | ||
25 | +// return nullptr; | ||
26 | +//} | ||
27 | + | ||
28 | +AlertView* AlertView::create(std::string message, std::string okText, std::string cancelText, cocos2d::Color3B okColor, cocos2d::Color3B cancelColor, std::function<void()> onConfirmCallback,std::function<void()> onCancelCallback){ | ||
29 | + | ||
30 | + AlertView * view = new (std::nothrow) AlertView(); | ||
31 | + if(view && view->init(message, okText, cancelText, okColor, cancelColor, onConfirmCallback, onCancelCallback)) | ||
32 | + { | ||
33 | + view->autorelease(); | ||
34 | + return view; | ||
35 | + } | ||
36 | + CC_SAFE_DELETE(view); | ||
37 | + return nullptr; | ||
38 | +} | ||
39 | + | ||
40 | +bool AlertView::init(std::string message, std::string okText, std::string cancelText, cocos2d::Color3B okColor, cocos2d::Color3B cancelColor, std::function<void()> onConfirmCallback,std::function<void()> onCancelCallback){ | ||
41 | + | ||
42 | + auto winSize = cocos2d::Director::getInstance()->getWinSize(); | ||
43 | + if(!cocos2d::LayerColor::initWithColor(cocos2d::Color4B(0,0,0,220), winSize.width, winSize.height)){ | ||
44 | + return false; | ||
45 | + } | ||
46 | + | ||
47 | + _onConfirmCallback = onConfirmCallback; | ||
48 | + _onCancelCallback = onCancelCallback; | ||
49 | + setupAppearance(message, okText, cancelText, okColor, cancelColor); | ||
50 | + | ||
51 | + return true; | ||
52 | +} | ||
53 | + | ||
54 | +void AlertView::setupAppearance(std::string message, std::string okText, std::string cancelText, cocos2d::Color3B okColor, cocos2d::Color3B cancelColor){ | ||
55 | + | ||
56 | + setCascadeOpacityEnabled(true); | ||
57 | +; | ||
58 | + auto wholeContainer = cocos2d::Node::create(); | ||
59 | + addChild(wholeContainer); | ||
60 | + | ||
61 | + // // add the instruction label | ||
62 | + auto messageLabel = cocos2d::Label::createWithTTF(message, "fonts/ComicSansMSBold.ttf", 90*ScalingUtils::getScaleForFont()); //TODO magic number, hard-coded text | ||
63 | + messageLabel->setColor(cocos2d::Color3B(200, 200, 200)); | ||
64 | + wholeContainer->addChild(messageLabel); | ||
65 | + wholeContainer->setCascadeOpacityEnabled(true); | ||
66 | + | ||
67 | + cocos2d::MenuItemFont::setFontSize(80*ScalingUtils::getScaleForFont()); //TODO MAGIC NUMBER | ||
68 | +#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS) | ||
69 | + cocos2d::MenuItemFont::setFontName("ComicSansMS-Bold"); | ||
70 | +#else | ||
71 | + cocos2d::MenuItemFont::setFontName("fonts/ComicSansMSBold.ttf"); | ||
72 | +#endif | ||
73 | + auto menuPadding = 140*ScalingUtils::scaleAspectFillToDesignIpadProSize();//TODO magic number | ||
74 | + auto menuItemCancel = cocos2d::MenuItemFont::create(cancelText, CC_CALLBACK_1(AlertView::onCancelClicked, this)); | ||
75 | + menuItemCancel->setColor(cancelColor); | ||
76 | + auto menuItemOK = cocos2d::MenuItemFont::create(okText, CC_CALLBACK_1(AlertView::onOKClicked, this)); | ||
77 | +// menuItemOK->setColor(cocos2d::Color3B(200, 100, 100)); | ||
78 | + menuItemOK->setColor(okColor); | ||
79 | + auto menuCenter = cocos2d::Menu::create(menuItemCancel,menuItemOK, nullptr); | ||
80 | + menuCenter->setContentSize(cocos2d::Size(menuItemOK->getBoundingBox().size.width + menuItemCancel->getBoundingBox().size.width + menuPadding, MAX(menuItemOK->getBoundingBox().size.height, menuItemCancel->getBoundingBox().size.height))); | ||
81 | + menuCenter->alignItemsHorizontallyWithPadding(menuPadding); | ||
82 | + menuCenter->setCascadeOpacityEnabled(true); | ||
83 | + | ||
84 | + wholeContainer->addChild(menuCenter); | ||
85 | + wholeContainer->setContentSize(cocos2d::Size(MAX(menuCenter->getBoundingBox().size.width, messageLabel->getBoundingBox().size.width), menuCenter->getBoundingBox().size.height + menuPadding + messageLabel->getBoundingBox().size.height)); | ||
86 | + | ||
87 | + menuCenter->setPositionX(wholeContainer->getContentSize().width/2); | ||
88 | + menuCenter->setPositionY(messageLabel->getBoundingBox().getMinY() + menuPadding); | ||
89 | + messageLabel->setPositionY(wholeContainer->getContentSize().height - messageLabel->getBoundingBox().size.height/2); | ||
90 | + messageLabel->setPositionX(wholeContainer->getContentSize().width/2); | ||
91 | + | ||
92 | + wholeContainer->setAnchorPoint(cocos2d::Vec2(0.5, 0.5)); | ||
93 | + wholeContainer->setPosition(getContentSize().width/2, getContentSize().height/2); | ||
94 | +} | ||
95 | + | ||
96 | +void AlertView::onCancelClicked(cocos2d::Ref* pSender){ | ||
97 | + _onCancelCallback(); | ||
98 | + runAction(cocos2d::Sequence::create(cocos2d::FadeOut::create(MiscUtils::StandardAnimationTime), cocos2d::CallFunc::create([&](){ | ||
99 | + MiscUtils::hideAndRemoveView(this,true); | ||
100 | + }), nullptr)); | ||
101 | +} | ||
102 | + | ||
103 | +void AlertView::onOKClicked(cocos2d::Ref* pSender){ | ||
104 | + _onConfirmCallback(); | ||
105 | +} |
ios/Runner/Wowgame/Classes/CustomViews/AlertView.h
0 → 100644
1 | +// | ||
2 | +// AlertView.h | ||
3 | +// HalloweenSpaceInvaders | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 09/10/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#ifndef AlertView_h | ||
9 | +#define AlertView_h | ||
10 | + | ||
11 | +#include "cocos2d.h" | ||
12 | +#include <string> | ||
13 | + | ||
14 | +class AlertView : public cocos2d::LayerColor { | ||
15 | +public: | ||
16 | + static AlertView* create(std::string message, std::string okText, std::string cancelText, cocos2d::Color3B okColor, cocos2d::Color3B cancelColor, std::function<void()> onConfirmCallback,std::function<void()> onCancelCallback); | ||
17 | + | ||
18 | +protected: | ||
19 | + | ||
20 | + std::function<void()> _onConfirmCallback; | ||
21 | + std::function<void()> _onCancelCallback; | ||
22 | + | ||
23 | + bool init(std::string message, std::string okText, std::string cancelText, cocos2d::Color3B okColor, cocos2d::Color3B cancelColor, std::function<void()> onConfirmCallback,std::function<void()> onCancelCallback); | ||
24 | + void setupAppearance(std::string message, std::string okText, std::string cancelText, cocos2d::Color3B okColor, cocos2d::Color3B cancelColor); | ||
25 | + | ||
26 | + void onCancelClicked(cocos2d::Ref* pSender); | ||
27 | + void onOKClicked(cocos2d::Ref* pSender); | ||
28 | +}; | ||
29 | + | ||
30 | +#endif /* AlertView_h */ |
ios/Runner/Wowgame/Classes/CustomViews/AppLinksView.cpp
0 → 100644
1 | +// | ||
2 | +// Created by Katarzyna Kalinowska-Górska on 2019-10-07. | ||
3 | +// | ||
4 | + | ||
5 | +#include "AppLinksView.h" | ||
6 | +#include "SimpleButton.h" | ||
7 | +#include "ScalingUtils.h" | ||
8 | + | ||
9 | +AppLinksView* AppLinksView::create(float width, float height, const std::vector<AppLinkData>& appsData, ParentalGateShowInterface* p_delegate){ | ||
10 | + AppLinksView * node = new (std::nothrow) AppLinksView(); | ||
11 | + if(node && node->init(width, height, appsData, p_delegate)) | ||
12 | + { | ||
13 | + node->autorelease(); | ||
14 | + return node; | ||
15 | + } | ||
16 | + CC_SAFE_DELETE(node); | ||
17 | + return nullptr; | ||
18 | +} | ||
19 | + | ||
20 | +AppLinksView* AppLinksView::create(const std::vector<AppLinkData>& appsData, ParentalGateShowInterface* p_delegate){ | ||
21 | + AppLinksView * node = new (std::nothrow) AppLinksView(); | ||
22 | + if(node && node->init(-1, -1, appsData, p_delegate)) | ||
23 | + { | ||
24 | + node->autorelease(); | ||
25 | + return node; | ||
26 | + } | ||
27 | + CC_SAFE_DELETE(node); | ||
28 | + return nullptr; | ||
29 | +} | ||
30 | + | ||
31 | +bool AppLinksView::init(float width, float height, const std::vector<AppLinkData>& appsData, ParentalGateShowInterface* p_delegate){ | ||
32 | + if(!cocos2d::ui::ScrollView::init()){ | ||
33 | + return false; | ||
34 | + } | ||
35 | + | ||
36 | + assert(p_delegate != nullptr); | ||
37 | + m_delegate = p_delegate; | ||
38 | + | ||
39 | + setDirection(cocos2d::ui::ScrollView::Direction::HORIZONTAL); | ||
40 | + bool adjustContentSize = width < 0 || height < 0; | ||
41 | + | ||
42 | + if(!adjustContentSize) { | ||
43 | + setContentSize(cocos2d::Size(width, height)); | ||
44 | + } | ||
45 | + setScrollBarEnabled(false); | ||
46 | + | ||
47 | + auto scaleF = ScalingUtils::getAdjustedContentScaleFactor(); | ||
48 | + static float PaddingX = 20/scaleF; | ||
49 | + static float PaddingY = 20/scaleF; | ||
50 | +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) | ||
51 | + static std::string PlayStoreBaseLinkApp = "market://details?id="; | ||
52 | + static std::string PlayStoreBaseLinkWeb = "https://play.google.com/store/apps/details?id="; | ||
53 | +#elif (CC_TARGET_PLATFORM == CC_PLATFORM_IOS) | ||
54 | + static std::string ITunesBaseLink = "itms-apps://itunes.apple.com/app/"; | ||
55 | +#endif | ||
56 | + | ||
57 | + auto tempX = PaddingX; | ||
58 | + | ||
59 | + float contentW = 0, contentH = 0; | ||
60 | + | ||
61 | + for(auto it = appsData.begin(); it != appsData.end(); ++it){ | ||
62 | +// m_links.push_back(it->appStoreId); | ||
63 | + | ||
64 | + auto button = SimpleButton::create(); | ||
65 | + auto buttonTexturePath = it->iconFilePath; | ||
66 | + button->loadTextures(buttonTexturePath, buttonTexturePath, buttonTexturePath); | ||
67 | + addChild(button); | ||
68 | + button->setPosition(cocos2d::Point(tempX + button->getBoundingBox().size.width/2, PaddingY + button->getBoundingBox().size.height/2)); | ||
69 | + tempX += button->getContentSize().width + PaddingX; | ||
70 | + auto haloSprite = cocos2d::Sprite::create("app_links/halo_icon.png"); | ||
71 | + haloSprite->setPosition(button->getPosition()); | ||
72 | + addChild(haloSprite); | ||
73 | + haloSprite->setOpacity(0); | ||
74 | + haloSprite->setLocalZOrder(0); | ||
75 | + button->setLocalZOrder(1); | ||
76 | + | ||
77 | + button->setOnTouchBeganCallback([haloSprite, button](std::string name, cocos2d::ui::Widget::TouchEventType eventType){ | ||
78 | + haloSprite->setScale(button->getScale()); | ||
79 | + haloSprite->stopAllActions(); | ||
80 | + haloSprite->runAction(cocos2d::FadeIn::create(0.1)); | ||
81 | + }); | ||
82 | + | ||
83 | + button->setOnTouchEndedCallback([&, haloSprite, button, link = it->storeId](std::string name, cocos2d::ui::Widget::TouchEventType eventType){ | ||
84 | + haloSprite->stopAllActions(); | ||
85 | + haloSprite->runAction(cocos2d::FadeOut::create(0.1)); | ||
86 | + haloSprite->setScale(button->getScale()); | ||
87 | + m_delegate->presentParentalGate([&](){ | ||
88 | + m_delegate->hideParentalGate(); | ||
89 | +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) | ||
90 | + if(!cocos2d::Application::getInstance()->openURL(PlayStoreBaseLinkApp + link)){ | ||
91 | + cocos2d::Application::getInstance()->openURL(PlayStoreBaseLinkWeb + link); | ||
92 | + } | ||
93 | +#elif (CC_TARGET_PLATFORM == CC_PLATFORM_IOS) | ||
94 | + cocos2d::Application::getInstance()->openURL(ITunesBaseLink + link); | ||
95 | +#endif | ||
96 | + }, [&](){ | ||
97 | + m_delegate->hideParentalGate(); | ||
98 | + }); | ||
99 | + }); | ||
100 | + | ||
101 | + button->setOnTouchCancelledCallback([haloSprite, button](std::string name, cocos2d::ui::Widget::TouchEventType eventType){ | ||
102 | + haloSprite->stopAllActions(); | ||
103 | + haloSprite->runAction(cocos2d::FadeOut::create(0.1)); | ||
104 | + haloSprite->setScale(button->getScale()); | ||
105 | + }); | ||
106 | + | ||
107 | + contentH = haloSprite->getBoundingBox().size.height; | ||
108 | + contentW += button->getBoundingBox().size.width*1.4f; | ||
109 | + } | ||
110 | + | ||
111 | + if(adjustContentSize){ | ||
112 | + setContentSize(cocos2d::Size(tempX, contentH)); | ||
113 | + } | ||
114 | + | ||
115 | + return true; | ||
116 | +} | ||
117 | + | ||
118 | + |
ios/Runner/Wowgame/Classes/CustomViews/AppLinksView.h
0 → 100644
1 | +// | ||
2 | +// Created by Katarzyna Kalinowska-Górska on 2019-10-07. | ||
3 | +// | ||
4 | + | ||
5 | +#ifndef APP_LINKS_VIEW_H | ||
6 | +#define APP_LINKS_VIEW_H | ||
7 | + | ||
8 | +#include "cocos2d.h" | ||
9 | +#include "ParentalGateShowInterface.h" | ||
10 | +#include "ui/CocosGUI.h" | ||
11 | + | ||
12 | +class AppLinksView : public cocos2d::ui::ScrollView { | ||
13 | + | ||
14 | +public: | ||
15 | + struct AppLinkData { | ||
16 | + AppLinkData(std::string p_iconFilePath, std::string p_storeId) : iconFilePath(p_iconFilePath), storeId(p_storeId) {} | ||
17 | + std::string iconFilePath; | ||
18 | + std::string storeId; | ||
19 | + }; | ||
20 | + | ||
21 | + static AppLinksView* create(float width, float height, const std::vector<AppLinkData>& appsData, ParentalGateShowInterface* p_delegate); | ||
22 | + static AppLinksView* create(const std::vector<AppLinkData>& appsData, ParentalGateShowInterface* p_delegate); | ||
23 | + | ||
24 | + | ||
25 | +protected: | ||
26 | + std::vector<cocos2d::Sprite*> m_halos; | ||
27 | + | ||
28 | + bool init(float width, float height, const std::vector<AppLinkData>& appsData, ParentalGateShowInterface* p_delegate); | ||
29 | + | ||
30 | + ParentalGateShowInterface* m_delegate {nullptr}; | ||
31 | +}; | ||
32 | + | ||
33 | + | ||
34 | +#endif //APP_LINKS_VIEW_H |
ios/Runner/Wowgame/Classes/CustomViews/GameLifeIndicatorView.cpp
0 → 100644
1 | +// | ||
2 | +// GameLifeIndicatorView.cpp | ||
3 | +// SteveAndMaggieGame-mobile | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 21/06/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#include <stdio.h> | ||
9 | +#include "GameLifeIndicatorView.h" | ||
10 | + | ||
11 | +GameLifeIndicatorView* GameLifeIndicatorView::create(std::string liveImagePath, std::string deadImagePath, int maxLives){ | ||
12 | + GameLifeIndicatorView * view = new (std::nothrow) GameLifeIndicatorView(); | ||
13 | + if(view && view->init(liveImagePath, deadImagePath, maxLives)) | ||
14 | + { | ||
15 | + view->autorelease(); | ||
16 | + return view; | ||
17 | + } | ||
18 | + CC_SAFE_DELETE(view); | ||
19 | + return nullptr; | ||
20 | +} | ||
21 | + | ||
22 | +bool GameLifeIndicatorView::init(std::string liveImagePath, std::string deadImagePath, int maxLives){ | ||
23 | + | ||
24 | + if(!cocos2d::Layer::init()){ | ||
25 | + return false; | ||
26 | + } | ||
27 | + | ||
28 | + float lifeSpriteWidth = 0; | ||
29 | + float lifeSpriteHeight = 0; | ||
30 | + | ||
31 | + for (int i = 0; i < maxLives; ++i) { | ||
32 | + auto lifeItem = new LifeItem(liveImagePath, deadImagePath); | ||
33 | + addChild(lifeItem->lifeSprite); | ||
34 | + lifeItem->lifeSprite->setPosition((i+0.5+i*PADDING_MULTIPLIER)*lifeItem->lifeSprite->getBoundingBox().size.width, lifeItem->lifeSprite->getBoundingBox().size.height/2); | ||
35 | + addChild(lifeItem->deadSprite); | ||
36 | + lifeItem->deadSprite->setPosition(lifeItem->lifeSprite->getPosition()); | ||
37 | + lives.push_back(lifeItem); | ||
38 | + lifeSpriteWidth = lifeItem->lifeSprite->getBoundingBox().size.width; | ||
39 | + lifeSpriteHeight = lifeItem->lifeSprite->getBoundingBox().size.height; | ||
40 | + } | ||
41 | + | ||
42 | + setContentSize(cocos2d::Size(maxLives*lifeSpriteWidth*(1+PADDING_MULTIPLIER), lifeSpriteHeight)); | ||
43 | + | ||
44 | + currentLives = maxLives; | ||
45 | + | ||
46 | + return true; | ||
47 | +} | ||
48 | + | ||
49 | +GameLifeIndicatorView::~GameLifeIndicatorView(){ | ||
50 | + for(auto it = lives.begin(); it != lives.end(); ++it){ | ||
51 | + delete *it; | ||
52 | + } | ||
53 | +} | ||
54 | + | ||
55 | +int GameLifeIndicatorView::loseLife(){ | ||
56 | + if(currentLives > 0){ | ||
57 | + --currentLives; | ||
58 | + lives[currentLives]->deactivate(true); | ||
59 | + } | ||
60 | + return currentLives; | ||
61 | +} | ||
62 | + | ||
63 | +int GameLifeIndicatorView::restoreLife(){ | ||
64 | + if(currentLives < lives.size()){ | ||
65 | + lives[currentLives]->activate(true); | ||
66 | + ++currentLives; | ||
67 | + } | ||
68 | + return currentLives; | ||
69 | +} | ||
70 | + | ||
71 | +void GameLifeIndicatorView::reset(){ | ||
72 | + currentLives = (int)lives.size(); | ||
73 | + for(auto it = lives.begin(); it != lives.end(); ++it){ | ||
74 | + (*it)->activate(false); | ||
75 | + } | ||
76 | +} | ||
77 | + | ||
78 | +float GameLifeIndicatorView::getPaddingX(){ | ||
79 | + if(lives.size() > 0){ | ||
80 | + return PADDING_MULTIPLIER*lives[0]->lifeSprite->getBoundingBox().size.width; | ||
81 | + } | ||
82 | + return 0; | ||
83 | +} | ||
84 | + |
ios/Runner/Wowgame/Classes/CustomViews/GameLifeIndicatorView.h
0 → 100644
1 | +// | ||
2 | +// GameLifeIndicatorView.h | ||
3 | +// SteveAndMaggieGame | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 21/06/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#ifndef GameLifeIndicatorView_h | ||
9 | +#define GameLifeIndicatorView_h | ||
10 | + | ||
11 | +#include <string> | ||
12 | +#include "cocos2d.h" | ||
13 | +#include "MiscUtils.h" | ||
14 | + | ||
15 | +#endif /* GameLifeIndicatorView_h */ | ||
16 | + | ||
17 | +class GameLifeIndicatorView : public cocos2d::Layer { | ||
18 | +public: | ||
19 | + static GameLifeIndicatorView* create(std::string liveImagePath, std::string deadImagePath, int maxLives); | ||
20 | + virtual int loseLife(); //return current number of lives | ||
21 | + virtual int restoreLife(); | ||
22 | + virtual void reset(); | ||
23 | + virtual float getPaddingX(); | ||
24 | + | ||
25 | +protected: | ||
26 | + bool init(std::string liveImagePath, std::string deadImagePath, int maxLives); | ||
27 | + static constexpr float PADDING_MULTIPLIER = 0.1f; | ||
28 | + | ||
29 | + virtual ~GameLifeIndicatorView(); | ||
30 | + | ||
31 | + class LifeItem { | ||
32 | + public: | ||
33 | + bool isActive; | ||
34 | + cocos2d::Sprite* lifeSprite; | ||
35 | + cocos2d::Sprite* deadSprite; | ||
36 | + constexpr static const int DEAD_OPACITY = 128; | ||
37 | + | ||
38 | + LifeItem(std::string liveImagePath, std::string deadImagePath){ | ||
39 | + isActive = true; | ||
40 | + lifeSprite = cocos2d::Sprite::create(liveImagePath); | ||
41 | + lifeSprite->retain(); | ||
42 | + deadSprite = cocos2d::Sprite::create(deadImagePath); | ||
43 | + deadSprite->retain(); | ||
44 | + deadSprite->setOpacity(0); | ||
45 | + } | ||
46 | + | ||
47 | + ~LifeItem(){ | ||
48 | + if(deadSprite != nullptr){ | ||
49 | + deadSprite->removeFromParent(); | ||
50 | + deadSprite->release(); | ||
51 | + } | ||
52 | + if(lifeSprite != nullptr){ | ||
53 | + lifeSprite->removeFromParent(); | ||
54 | + lifeSprite->release(); | ||
55 | + } | ||
56 | + } | ||
57 | + | ||
58 | + virtual void activate(bool animated){ | ||
59 | + isActive = true; | ||
60 | + if(animated){ | ||
61 | + lifeSprite->runAction(cocos2d::FadeIn::create(MiscUtils::StandardAnimationTime)); | ||
62 | + deadSprite->runAction(cocos2d::FadeOut::create(MiscUtils::StandardAnimationTime)); | ||
63 | + } else { | ||
64 | + lifeSprite->setOpacity(255); | ||
65 | + deadSprite->setOpacity(0); | ||
66 | + } | ||
67 | + } | ||
68 | + | ||
69 | + virtual void deactivate(bool animated){ | ||
70 | + isActive = false; | ||
71 | + if(animated){ | ||
72 | + lifeSprite->runAction(cocos2d::FadeOut::create(MiscUtils::StandardAnimationTime)); | ||
73 | + deadSprite->runAction(cocos2d::FadeTo::create(MiscUtils::StandardAnimationTime, DEAD_OPACITY)); | ||
74 | + } else { | ||
75 | + lifeSprite->setOpacity(0); | ||
76 | + deadSprite->setOpacity(DEAD_OPACITY); | ||
77 | + } | ||
78 | + } | ||
79 | + }; | ||
80 | + | ||
81 | + std::vector<LifeItem*> lives; | ||
82 | + int currentLives; | ||
83 | +}; |
ios/Runner/Wowgame/Classes/CustomViews/Layers/CustomLayerView.cpp
0 → 100644
1 | +// | ||
2 | +// CustomLayerView.cpp | ||
3 | +// SteveMaggieCpp | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 19.05.2017. | ||
6 | +// | ||
7 | +// | ||
8 | + | ||
9 | +#include <stdio.h> | ||
10 | +#include "CustomLayerView.h" | ||
11 | +#include "LayoutParser.h" | ||
12 | + | ||
13 | +CustomLayerView* CustomLayerView::create(std::string layoutFilePath, std::string scenarioFilePath) | ||
14 | +{ | ||
15 | + CustomLayerView * view = new (std::nothrow) CustomLayerView(); | ||
16 | + if(view && view->init(layoutFilePath, scenarioFilePath)) | ||
17 | + { | ||
18 | + view->autorelease(); | ||
19 | + return view; | ||
20 | + } | ||
21 | + CC_SAFE_DELETE(view); | ||
22 | + return nullptr; | ||
23 | +} | ||
24 | + | ||
25 | +bool CustomLayerView::init(std::string layoutFilePath, std::string scenarioFilePath) | ||
26 | +{ | ||
27 | + if(!Layer::init()){ | ||
28 | + return false; | ||
29 | + } | ||
30 | + | ||
31 | + _layoutFilePath = layoutFilePath; | ||
32 | + _layoutLoaded = false; | ||
33 | + _loadFromAssets = false; | ||
34 | + _widgetTouchEventCallback = [](std::string, cocos2d::ui::Widget::TouchEventType){}; | ||
35 | + if(scenarioFilePath != ""){ | ||
36 | + auto fileUtils = cocos2d::FileUtils::getInstance(); | ||
37 | + if (fileUtils->isFileExist(scenarioFilePath)) { | ||
38 | + std::string jsonString = fileUtils->getStringFromFile(scenarioFilePath); | ||
39 | + rapidjson::Document doc; | ||
40 | + doc.Parse(jsonString.c_str()); | ||
41 | + _actionSequenceHandler = new (std::nothrow) ActionSequenceHandler(this, doc); | ||
42 | + } | ||
43 | + } | ||
44 | + | ||
45 | + return true; | ||
46 | +} | ||
47 | + | ||
48 | +CustomLayerView::~CustomLayerView() | ||
49 | +{ | ||
50 | + if(_actionSequenceHandler){ | ||
51 | + delete _actionSequenceHandler; | ||
52 | + } | ||
53 | +} | ||
54 | + | ||
55 | +void CustomLayerView::onEnter() | ||
56 | +{ | ||
57 | + cocos2d::Layer::onEnter(); | ||
58 | + this->loadLayout(false); | ||
59 | + if(_actionSequenceHandler){ | ||
60 | + _actionSequenceHandler->runNext(); | ||
61 | + } | ||
62 | +} | ||
63 | + | ||
64 | +void CustomLayerView::onExit() | ||
65 | +{ | ||
66 | + cocos2d::Layer::onExit(); | ||
67 | +} | ||
68 | + | ||
69 | +void CustomLayerView::loadLayout(bool forceLoad) | ||
70 | +{ | ||
71 | + if(!_layoutLoaded || forceLoad){ | ||
72 | + | ||
73 | + auto& layoutParser = LayoutParser::getInstance(); | ||
74 | + if (_loadFromAssets && cocos2d::FileUtils::getInstance()->isFileExist(this->_layoutFilePath)) { | ||
75 | + layoutParser.loadLayoutFromJSONFile(this->_layoutFilePath, this); | ||
76 | + } | ||
77 | + else if(!_loadFromAssets){ | ||
78 | + layoutParser.loadLayoutFromDownloadedJSONFile(this->_layoutFilePath, this); | ||
79 | + } | ||
80 | + | ||
81 | + _layoutLoaded = true; | ||
82 | + this->layoutLoaded(); | ||
83 | + } | ||
84 | +} | ||
85 | + | ||
86 | +void CustomLayerView::layoutLoaded() | ||
87 | +{ | ||
88 | + // to override in subclasses if needed | ||
89 | +} | ||
90 | + | ||
91 | +bool CustomLayerView::touchHandlerForWidget(std::string objectName, cocos2d::ui::Widget::TouchEventType touchEventType) | ||
92 | +{ | ||
93 | + _widgetTouchEventCallback(objectName, touchEventType); | ||
94 | + | ||
95 | +// auto object = _scenarioObjects[objectName]; | ||
96 | + | ||
97 | +// if(objectName == "backButton" && touchEventType == ccui.Widget.TOUCH_ENDED){ | ||
98 | +// | ||
99 | +// log("gugugug"); | ||
100 | +// } | ||
101 | + | ||
102 | + //todo add animation to dismiss dialog | ||
103 | + // todo make a parser outside | ||
104 | + return false; | ||
105 | +} | ||
106 | + | ||
107 | +void CustomLayerView::resetActionSequence() | ||
108 | +{ | ||
109 | + if(_actionSequenceHandler){ | ||
110 | + _actionSequenceHandler->reset(); | ||
111 | + } | ||
112 | +} | ||
113 | + | ||
114 | +void CustomLayerView::setWidgetTouchEventCallback(std::function<void(std::string widgetName, cocos2d::ui::Widget::TouchEventType touchEventType)> widgetTouchEventCallback) | ||
115 | +{ | ||
116 | + _widgetTouchEventCallback = widgetTouchEventCallback; | ||
117 | +} | ||
118 | + | ||
119 | +// layout parse delegate | ||
120 | +void CustomLayerView::addLayer(cocos2d::Layer* layer) | ||
121 | +{ | ||
122 | + _layers.push_back(layer); | ||
123 | +} | ||
124 | + | ||
125 | +void CustomLayerView::addObject(std::string objectName, cocos2d::Node* object) | ||
126 | +{ | ||
127 | + _objects.insert({objectName, object}); | ||
128 | +} | ||
129 | + | ||
130 | +void CustomLayerView::addScenarioObject(std::string objectName, ScenarioObject* object) | ||
131 | +{ | ||
132 | + _scenarioObjects.insert({objectName, object}); | ||
133 | +} | ||
134 | + | ||
135 | +ScenarioObject* CustomLayerView::getScenarioObjectByName(std::string objectName) | ||
136 | +{ | ||
137 | + if(_scenarioObjects.find(objectName) != _scenarioObjects.end()){ | ||
138 | + return _scenarioObjects[objectName]; | ||
139 | + } | ||
140 | + return nullptr; | ||
141 | +} | ||
142 | + | ||
143 | + |
ios/Runner/Wowgame/Classes/CustomViews/Layers/CustomLayerView.h
0 → 100644
1 | +// | ||
2 | +// CustomLayerView.h | ||
3 | +// SteveMaggieCpp | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 19.05.2017. | ||
6 | +// | ||
7 | +// | ||
8 | + | ||
9 | +#ifndef CustomLayerView_h | ||
10 | +#define CustomLayerView_h | ||
11 | + | ||
12 | +#include "ScenarioObject.h" | ||
13 | +#include "LayoutParser.h" | ||
14 | +#include "ActionSequenceHandler.h" | ||
15 | + | ||
16 | +class CustomLayerView : public cocos2d::Layer, public LayoutViewInterface, public ScenarioObject | ||
17 | +{ | ||
18 | + public: | ||
19 | + static CustomLayerView* create(std::string layoutFilePath, std::string scenarioFilePath = ""); | ||
20 | + virtual bool init(std::string layoutFilePath, std::string scenarioFilePath = ""); | ||
21 | + virtual ~CustomLayerView(); | ||
22 | + | ||
23 | + virtual void onEnter() override; | ||
24 | + virtual void onExit() override; | ||
25 | + virtual void loadLayout(bool forceLoad); | ||
26 | + virtual void layoutLoaded(); | ||
27 | + virtual void resetActionSequence(); | ||
28 | + | ||
29 | + virtual bool touchHandlerForWidget(std::string objectName, cocos2d::ui::Widget::TouchEventType touchEventType) override; | ||
30 | + | ||
31 | + virtual void setWidgetTouchEventCallback(std::function<void(std::string widgetName, cocos2d::ui::Widget::TouchEventType touchEventType)> widgetTouchEventCallback); | ||
32 | + | ||
33 | + //LayoutViewInterface | ||
34 | + virtual void addLayer(cocos2d::Layer* layer) override; | ||
35 | + virtual void addObject(std::string objectName, cocos2d::Node* object) override; | ||
36 | + virtual void addScenarioObject(std::string objectName, ScenarioObject* object) override; | ||
37 | + | ||
38 | + //ScenarioObject - for ActionSequenceHandler | ||
39 | + virtual ScenarioObject* getScenarioObjectByName(std::string name) override; | ||
40 | + | ||
41 | + protected: | ||
42 | + std::string _layoutFilePath; | ||
43 | + ActionSequenceHandler* _actionSequenceHandler; | ||
44 | + bool _layoutLoaded; | ||
45 | + std::vector<cocos2d::Layer*> _layers; | ||
46 | + std::map<std::string, cocos2d::Node*> _objects; | ||
47 | + std::map<std::string, ScenarioObject*> _scenarioObjects; | ||
48 | + bool _loadFromAssets; | ||
49 | + | ||
50 | + std::function<void(std::string, cocos2d::ui::Widget::TouchEventType)> _widgetTouchEventCallback; | ||
51 | +}; | ||
52 | + | ||
53 | +#endif /* CustomLayerView_h */ | ||
54 | + |
ios/Runner/Wowgame/Classes/CustomViews/Layers/TouchInterceptingLayer.cpp
0 → 100644
1 | +// | ||
2 | +// TouchInterceptingLayer.cpp | ||
3 | +// SteveMaggieCpp | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 12.05.2017. | ||
6 | +// | ||
7 | +// | ||
8 | + | ||
9 | +#include "TouchInterceptingLayer.h" | ||
10 | + | ||
11 | +// create | ||
12 | + | ||
13 | +TouchInterceptingLayer * TouchInterceptingLayer::create(const cocos2d::Color4B& color, bool sceneGraphPriority) | ||
14 | +{ | ||
15 | + TouchInterceptingLayer * layer = new (std::nothrow) TouchInterceptingLayer(); | ||
16 | + if(layer && layer->initWithColor(color, sceneGraphPriority)) | ||
17 | + { | ||
18 | + layer->autorelease(); | ||
19 | + return layer; | ||
20 | + } | ||
21 | + CC_SAFE_DELETE(layer); | ||
22 | + return nullptr; | ||
23 | +} | ||
24 | + | ||
25 | +// overrides | ||
26 | + | ||
27 | +bool TouchInterceptingLayer::initWithColor(const cocos2d::Color4B& color, bool sceneGraphPriority) | ||
28 | +{ | ||
29 | + if(!LayerColor::initWithColor(color)) | ||
30 | + { | ||
31 | + return false; | ||
32 | + } | ||
33 | + | ||
34 | + _onTouchCallback = nullptr; | ||
35 | + this->configureTouchListener(sceneGraphPriority); | ||
36 | + | ||
37 | + return true; | ||
38 | +} | ||
39 | + | ||
40 | +//void TouchInterceptingLayer::onEnter() | ||
41 | +//{ | ||
42 | +// cocos2d::LayerColor::onEnter(); | ||
43 | +//} | ||
44 | + | ||
45 | +void TouchInterceptingLayer::configureTouchListener(bool sceneGraphPriority) | ||
46 | +{ | ||
47 | + auto touchListener = cocos2d::EventListenerTouchOneByOne::create(); | ||
48 | + touchListener->setSwallowTouches(true); | ||
49 | + touchListener->onTouchBegan = [&](cocos2d::Touch* touch, cocos2d::Event* event){ | ||
50 | + | ||
51 | + if(_onTouchCallback){ | ||
52 | + _onTouchCallback(touch); | ||
53 | + } | ||
54 | + | ||
55 | + return true; | ||
56 | + }; | ||
57 | + | ||
58 | + touchListener->onTouchMoved = [&](cocos2d::Touch* touch, cocos2d::Event* event){ | ||
59 | + | ||
60 | + if(_onTouchMovedCallback){ | ||
61 | + _onTouchMovedCallback(touch); | ||
62 | + } | ||
63 | + }; | ||
64 | + | ||
65 | + touchListener->onTouchEnded = [&](cocos2d::Touch* touch, cocos2d::Event* event){ | ||
66 | + | ||
67 | + if(_onTouchEndedCallback){ | ||
68 | + _onTouchEndedCallback(touch); | ||
69 | + } | ||
70 | + }; | ||
71 | + | ||
72 | + if(sceneGraphPriority){ | ||
73 | + _eventDispatcher->addEventListenerWithSceneGraphPriority(touchListener, this); | ||
74 | + } else { | ||
75 | + _eventDispatcher->addEventListenerWithFixedPriority(touchListener, TouchEventListenerPriority); | ||
76 | + } | ||
77 | +} | ||
78 | + | ||
79 | +//setters | ||
80 | + | ||
81 | +void TouchInterceptingLayer::setOnTouchCallback(const std::function<void(cocos2d::Touch*)>& onTouchCallback) | ||
82 | +{ | ||
83 | + this->_onTouchCallback = onTouchCallback; | ||
84 | +} | ||
85 | + | ||
86 | +void TouchInterceptingLayer::setOnTouchMovedCallback(const std::function<void(cocos2d::Touch*)>& onTouchCallback) | ||
87 | +{ | ||
88 | + this->_onTouchMovedCallback = onTouchCallback; | ||
89 | +} | ||
90 | + | ||
91 | +void TouchInterceptingLayer::setOnTouchEndedCallback(const std::function<void(cocos2d::Touch*)>& onTouchCallback) | ||
92 | +{ | ||
93 | + this->_onTouchEndedCallback = onTouchCallback; | ||
94 | +} | ||
95 | + | ||
96 | +void TouchInterceptingLayer::clearTouchHandlers() | ||
97 | +{ | ||
98 | + _onTouchCallback = nullptr; | ||
99 | + _onTouchMovedCallback = nullptr; | ||
100 | + _onTouchEndedCallback = nullptr; | ||
101 | +} | ||
102 | + |
ios/Runner/Wowgame/Classes/CustomViews/Layers/TouchInterceptingLayer.h
0 → 100644
1 | +// | ||
2 | +// TouchInterceptingLayer.hpp | ||
3 | +// SteveMaggieCpp | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 12.05.2017. | ||
6 | +// | ||
7 | +// | ||
8 | + | ||
9 | +#ifndef TouchInterceptingLayer_h | ||
10 | +#define TouchInterceptingLayer_h | ||
11 | + | ||
12 | +#include <stdio.h> | ||
13 | +#include "cocos2d.h" | ||
14 | + | ||
15 | +class TouchInterceptingLayer : public cocos2d::LayerColor { | ||
16 | + | ||
17 | + public: | ||
18 | + | ||
19 | + static const int TouchEventListenerPriority = -100; | ||
20 | + | ||
21 | + // create | ||
22 | + static TouchInterceptingLayer * create(const cocos2d::Color4B& color, bool sceneGraphPriority = true); | ||
23 | + | ||
24 | + // init | ||
25 | + virtual bool initWithColor(const cocos2d::Color4B& color, bool sceneGraphPriority = true); | ||
26 | + virtual void configureTouchListener(bool sceneGraphPriority = true); | ||
27 | + | ||
28 | + // setters | ||
29 | + virtual void setOnTouchCallback(const std::function<void(cocos2d::Touch*)>& onTouchCallback); | ||
30 | + virtual void setOnTouchMovedCallback(const std::function<void(cocos2d::Touch*)>& onTouchCallback); | ||
31 | + virtual void setOnTouchEndedCallback(const std::function<void(cocos2d::Touch*)>& onTouchCallback); | ||
32 | + virtual void clearTouchHandlers(); | ||
33 | + | ||
34 | + protected: | ||
35 | + | ||
36 | + std::function<void(cocos2d::Touch*)> _onTouchCallback; | ||
37 | + std::function<void(cocos2d::Touch*)> _onTouchMovedCallback; | ||
38 | + std::function<void(cocos2d::Touch*)> _onTouchEndedCallback; | ||
39 | + | ||
40 | +}; | ||
41 | + | ||
42 | +#endif /* TouchInterceptingLayer_hpp */ |
ios/Runner/Wowgame/Classes/CustomViews/LevelPickerView/LevelPickerLayer.cpp
0 → 100644
1 | +// | ||
2 | +// LevelPickerLayer.cpp | ||
3 | +// HalloweenSpaceInvaders-mobile | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 03/10/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#include <stdio.h> | ||
9 | +#include "LevelPickerLayer.h" | ||
10 | +#include "ScalingUtils.h" | ||
11 | +#include "SimpleButton.h" | ||
12 | +#include "MiscUtils.h" | ||
13 | + | ||
14 | +LevelPickerLayer* LevelPickerLayer::create(float width, float height){ | ||
15 | + LevelPickerLayer * view = new (std::nothrow) LevelPickerLayer(); | ||
16 | + if(view && view->init(width, height)) | ||
17 | + { | ||
18 | + view->autorelease(); | ||
19 | + return view; | ||
20 | + } | ||
21 | + CC_SAFE_DELETE(view); | ||
22 | + return nullptr; | ||
23 | +} | ||
24 | + | ||
25 | +bool LevelPickerLayer::init(float width, float height){ | ||
26 | + if(!cocos2d::LayerColor::initWithColor(cocos2d::Color4B(0,0,0,220), width, height)){ | ||
27 | + return false; | ||
28 | + } | ||
29 | + | ||
30 | + setCascadeOpacityEnabled(true); | ||
31 | + // add the level picker | ||
32 | + std::vector<std::string> levelImagePaths = { "graphics/levels/level_1.png", "graphics/levels/level_2.png", "graphics/levels/level_3.png" }; | ||
33 | + std::vector<std::string> levelNames = { "EASY", "MEDIUM", "DIFFICULT" }; //TODO HARD CODED | ||
34 | + _levelPickerView = LevelPickerView::create(levelImagePaths, levelNames); | ||
35 | + addChild(_levelPickerView); | ||
36 | + _levelPickerView->setAnchorPoint(cocos2d::Vec2(0.5, 0.5)); | ||
37 | + _levelPickerView->setPosition(width/2, height/2); | ||
38 | + _levelPickerView->addOnLevelChangedCallback([&](int pickedLevel){ | ||
39 | + MiscUtils::saveLastLevel(pickedLevel); | ||
40 | + _onLevelChangedCallback(pickedLevel); | ||
41 | + }); | ||
42 | + _levelPickerView->selectLevelIndex((int)MiscUtils::lastLevel(), false); | ||
43 | + | ||
44 | + // add the instruction label | ||
45 | + auto instructionLabel = cocos2d::Label::createWithTTF("CHOOSE YOUR LEVEL:", "fonts/ComicSansMSBold.ttf", 120*ScalingUtils::getScaleForFont()); //magic number | ||
46 | + addChild(instructionLabel); | ||
47 | + auto paddingTop = instructionLabel->getBoundingBox().size.height*1.5f; | ||
48 | + instructionLabel->setPosition(width/2, _levelPickerView->getBoundingBox().getMaxY() + paddingTop); | ||
49 | + | ||
50 | + // add the go button | ||
51 | + auto buttonGo = SimpleButton::create(); | ||
52 | + auto goButtonTexturePath = "buttons/graphics/dark_green.png"; | ||
53 | + buttonGo->loadTextures(goButtonTexturePath, goButtonTexturePath, goButtonTexturePath); | ||
54 | + auto buttonBg = cocos2d::Sprite::create("buttons/graphics/button_go.png"); | ||
55 | + buttonGo->addChild(buttonBg); | ||
56 | + buttonBg->setPosition(cocos2d::Vec2(buttonGo->getContentSize().width/2,buttonGo->getContentSize().height/2)); | ||
57 | + addChild(buttonGo); | ||
58 | + auto paddingBottom = paddingTop; | ||
59 | + buttonGo->setAnchorPoint(cocos2d::Vec2(1, 0.5)); | ||
60 | + buttonGo->setPosition(cocos2d::Vec2(_levelPickerView->getBoundingBox().getMaxX(), _levelPickerView->getBoundingBox().getMinY() - paddingBottom)); | ||
61 | + buttonGo->setOnTouchEndedCallback([&](std::string name, cocos2d::ui::Widget::TouchEventType eventType){ | ||
62 | + if(_onGoPressedCallback != nullptr){ | ||
63 | + _onGoPressedCallback(); | ||
64 | + } | ||
65 | + MiscUtils::hideAndRemoveView(this, true); | ||
66 | + }); | ||
67 | + | ||
68 | + return true; | ||
69 | +} | ||
70 | + | ||
71 | +void LevelPickerLayer::addOnGoPressedCallback(std::function<void()> onGoPressed){ | ||
72 | + _onGoPressedCallback = onGoPressed; | ||
73 | +} | ||
74 | + | ||
75 | +void LevelPickerLayer::setOnLevelChangedCallback(std::function<void(int)> p_onLevelChangedCallback){ | ||
76 | + _onLevelChangedCallback = p_onLevelChangedCallback; | ||
77 | +} |
ios/Runner/Wowgame/Classes/CustomViews/LevelPickerView/LevelPickerLayer.h
0 → 100644
1 | +// | ||
2 | +// LevelPickerLayer.h | ||
3 | +// HalloweenSpaceInvaders | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 03/10/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#ifndef LevelPickerLayer_h | ||
9 | +#define LevelPickerLayer_h | ||
10 | + | ||
11 | +#include "cocos2d.h" | ||
12 | +#include "LevelPickerView.h" | ||
13 | + | ||
14 | +class LevelPickerLayer : public cocos2d::LayerColor { | ||
15 | + | ||
16 | +public: | ||
17 | + static LevelPickerLayer* create(float width, float height); | ||
18 | + void addOnGoPressedCallback(std::function<void()> onGoPressed); | ||
19 | + void setOnLevelChangedCallback(std::function<void(int)> p_onLevelChangedCallback); | ||
20 | + | ||
21 | +protected: | ||
22 | + LevelPickerView* _levelPickerView; | ||
23 | + std::function<void()> _onGoPressedCallback; | ||
24 | + std::function<void(int)> _onLevelChangedCallback { [](int){} }; | ||
25 | + | ||
26 | + bool init(float width, float height); | ||
27 | + | ||
28 | + | ||
29 | + | ||
30 | +}; | ||
31 | + | ||
32 | +#endif /* LevelPickerLayer_h */ |
ios/Runner/Wowgame/Classes/CustomViews/LevelPickerView/LevelPickerView.cpp
0 → 100644
1 | +// | ||
2 | +// LevelPickerView.cpp | ||
3 | +// HalloweenSpaceInvaders-mobile | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 29/09/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#include <stdio.h> | ||
9 | +#include "LevelPickerView.h" | ||
10 | +#include "GeometryUtils.h" | ||
11 | +#include "MiscUtils.h" | ||
12 | + | ||
13 | +LevelPickerView* LevelPickerView::create(const std::vector<std::string>& levelImagePaths, const std::vector<std::string>& levelNames){ | ||
14 | + LevelPickerView * view = new (std::nothrow) LevelPickerView(); | ||
15 | + if(view && view->init(levelImagePaths, levelNames)) | ||
16 | + { | ||
17 | + view->autorelease(); | ||
18 | + return view; | ||
19 | + } | ||
20 | + CC_SAFE_DELETE(view); | ||
21 | + return nullptr; | ||
22 | +} | ||
23 | + | ||
24 | + | ||
25 | +bool LevelPickerView::init(const std::vector<std::string>& levelImagePaths, const std::vector<std::string>& levelNames){ | ||
26 | + | ||
27 | +// assert(levelNames.size() == levelImagePaths.size()); | ||
28 | + | ||
29 | + if(!cocos2d::Node::init()){ | ||
30 | + return false; | ||
31 | + } | ||
32 | + | ||
33 | + setCascadeOpacityEnabled(true); | ||
34 | + reloadLevels(levelImagePaths, levelNames); | ||
35 | + | ||
36 | + _onLevelChanged = nullptr; | ||
37 | + prepareTouchHandlers(); | ||
38 | + | ||
39 | + return true; | ||
40 | +} | ||
41 | + | ||
42 | +void LevelPickerView::reloadLevels(const std::vector<std::string>& levelImagePaths, const std::vector<std::string>& levelNames){ | ||
43 | + for(auto oldLevelView : levelViews){ | ||
44 | + oldLevelView->removeFromParent(); | ||
45 | + } | ||
46 | + levelViews.clear(); | ||
47 | + float maxHeight = 0; | ||
48 | + float sumWidth = 0; | ||
49 | + | ||
50 | + for(int i = 0; i < levelImagePaths.size(); ++i){ | ||
51 | + auto newLevelView = levelNames.size() == levelImagePaths.size() ? LevelView::create(levelImagePaths[i], levelNames[i]) : LevelView::create(levelImagePaths[i]); | ||
52 | + addChild(newLevelView); | ||
53 | + levelViews.emplace_back(newLevelView); | ||
54 | + sumWidth += newLevelView->getBoundingBox().size.width; | ||
55 | + maxHeight = MAX(newLevelView->getBoundingBox().size.height, maxHeight); | ||
56 | + } | ||
57 | + | ||
58 | + auto padding = sumWidth/levelImagePaths.size()/3; | ||
59 | + auto contentSize = cocos2d::Size(sumWidth+padding*3, maxHeight); | ||
60 | + | ||
61 | + setContentSize(contentSize); | ||
62 | + | ||
63 | + for(int i = 0; i < levelViews.size(); ++i){ | ||
64 | + auto levelView = levelViews[i]; | ||
65 | + levelView->setPosition(levelView->getBoundingBox().size.width/2 + padding*(4*i+0.5), contentSize.height/2); | ||
66 | + } | ||
67 | + | ||
68 | + _selectedLevelIndex = 0; | ||
69 | + levelViews[_selectedLevelIndex]->setChosen(true, false); | ||
70 | +} | ||
71 | + | ||
72 | +void LevelPickerView::selectLevelIndex(int index, bool animated){ | ||
73 | + if(_selectedLevelIndex != index){ | ||
74 | + if(animated){ | ||
75 | + levelViews[_selectedLevelIndex]->setChosen(false, true); | ||
76 | + levelViews[index]->setChosen(true, true); | ||
77 | + } else { | ||
78 | + levelViews[_selectedLevelIndex]->setChosen(false, false); | ||
79 | + levelViews[index]->setChosen(true, false); | ||
80 | + } | ||
81 | + _selectedLevelIndex = index; | ||
82 | + } | ||
83 | +} | ||
84 | + | ||
85 | +int LevelPickerView::getPickedLevelIndex(){ | ||
86 | + return _selectedLevelIndex; | ||
87 | +} | ||
88 | + | ||
89 | +void LevelPickerView::addOnLevelChangedCallback(std::function<void(int)> onLevelChanged){ | ||
90 | + _onLevelChanged = onLevelChanged; | ||
91 | +} | ||
92 | + | ||
93 | +void LevelPickerView::prepareTouchHandlers() | ||
94 | +{ | ||
95 | + auto touchListener = cocos2d::EventListenerTouchOneByOne::create(); | ||
96 | + touchListener->onTouchBegan = [&](cocos2d::Touch* touch, cocos2d::Event* event){ | ||
97 | + return MiscUtils::isNodeVisible(this) && GeometryUtils::getBoundingBoxToWorld(this).containsPoint(touch->getLocation()); | ||
98 | + }; | ||
99 | + touchListener->onTouchEnded = [&](cocos2d::Touch* touch, cocos2d::Event* event){ | ||
100 | + for(int i = 0; i < levelViews.size(); ++i){ | ||
101 | + if(GeometryUtils::getBoundingBoxToWorld(levelViews[i]).containsPoint(touch->getLocation())){ | ||
102 | + selectLevelIndex(i, true); | ||
103 | + if(_onLevelChanged != nullptr){ | ||
104 | + _onLevelChanged(i); | ||
105 | + } | ||
106 | + break; | ||
107 | + } | ||
108 | + } | ||
109 | + }; | ||
110 | + _eventDispatcher->addEventListenerWithSceneGraphPriority(touchListener, this); | ||
111 | +} | ||
112 | + | ||
113 | +void LevelPickerView::loadPropertiesFromJSON(const rapidjson::Value& jsonValue, LayoutViewInterface* scene, const std::string resFolder, const std::string altResFolder) | ||
114 | +{ | ||
115 | + setAnchorPoint(cocos2d::Vec2(0.5,0.5)); | ||
116 | + this->loadCommonPropertiesFromJSON(jsonValue); | ||
117 | +} | ||
118 | + | ||
119 | + | ||
120 | + | ||
121 | + | ||
122 | + |
ios/Runner/Wowgame/Classes/CustomViews/LevelPickerView/LevelPickerView.h
0 → 100644
1 | +// | ||
2 | +// LevelPickerView.h | ||
3 | +// HalloweenSpaceInvaders | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 29/09/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#ifndef LevelPickerView_h | ||
9 | +#define LevelPickerView_h | ||
10 | + | ||
11 | +#include "cocos2d.h" | ||
12 | +#include "LevelView.h" | ||
13 | +#include <vector> | ||
14 | +#include <string> | ||
15 | +#include "LayoutObject.h" | ||
16 | + | ||
17 | +class LevelPickerView : public cocos2d::Node, public LayoutObject { | ||
18 | + | ||
19 | +public: | ||
20 | + static LevelPickerView* create(const std::vector<std::string>& levelImagePaths, const std::vector<std::string>& levelNames); | ||
21 | + void selectLevelIndex(int index, bool animated = true); | ||
22 | + int getPickedLevelIndex(); | ||
23 | + void addOnLevelChangedCallback(std::function<void(int)> onLevelChanged); | ||
24 | + void reloadLevels(const std::vector<std::string>& levelImagePaths, const std::vector<std::string>& levelNames); | ||
25 | + | ||
26 | + virtual void loadPropertiesFromJSON(const rapidjson::Value& jsonValue, LayoutViewInterface* scene = NULL, const std::string resFolder = "", const std::string altResFolder = "") override; | ||
27 | + | ||
28 | +protected: | ||
29 | + int _selectedLevelIndex; | ||
30 | + std::vector<LevelView*> levelViews; | ||
31 | + std::function<void(int)> _onLevelChanged; | ||
32 | + bool init(const std::vector<std::string>& levelImagePaths, const std::vector<std::string>& levelNames); | ||
33 | + void prepareTouchHandlers(); | ||
34 | +}; | ||
35 | + | ||
36 | +#endif /* LevelPickerView_h */ |
ios/Runner/Wowgame/Classes/CustomViews/LevelPickerView/SimpleLevelPickerView.cpp
0 → 100644
1 | +// | ||
2 | +// SimpleLevelPickerView.cpp | ||
3 | +// HalloweenSpaceInvaders-mobile | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 01/10/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#include <stdio.h> | ||
9 | +#include "SimpleLevelPickerView.h" | ||
10 | +#include "MiscUtils.h" | ||
11 | +#include "GeometryUtils.h" | ||
12 | + | ||
13 | +SimpleLevelPickerView* SimpleLevelPickerView::create(std::vector<std::string> levelImagePaths){ | ||
14 | + SimpleLevelPickerView * view = new (std::nothrow) SimpleLevelPickerView(); | ||
15 | + if(view && view->init(levelImagePaths)) | ||
16 | + { | ||
17 | + view->autorelease(); | ||
18 | + return view; | ||
19 | + } | ||
20 | + CC_SAFE_DELETE(view); | ||
21 | + return nullptr; | ||
22 | +} | ||
23 | + | ||
24 | +bool SimpleLevelPickerView::init(std::vector<std::string> levelImagePaths){ | ||
25 | + if(!cocos2d::Node::init()){ | ||
26 | + return false; | ||
27 | + } | ||
28 | + | ||
29 | + for(auto levelImagePath : levelImagePaths){ | ||
30 | + auto newLevelView = LevelView::create(levelImagePath); | ||
31 | + addChild(newLevelView); | ||
32 | + levelViews.emplace_back(newLevelView); | ||
33 | + newLevelView->setCascadeOpacityEnabled(true); | ||
34 | + newLevelView->setOpacity(0); | ||
35 | + auto contentSize = getContentSize(); | ||
36 | + contentSize = cocos2d::Size(MAX(contentSize.width, newLevelView->getBoundingBox().size.width), MAX(contentSize.height, newLevelView->getBoundingBox().size.height)); | ||
37 | + setContentSize(contentSize); | ||
38 | + } | ||
39 | + | ||
40 | + for(auto levelView : levelViews){ | ||
41 | + levelView->setPosition(getContentSize().width/2, getContentSize().height/2); | ||
42 | + } | ||
43 | + | ||
44 | + _selectedLevelIndex = 0; | ||
45 | + levelViews[_selectedLevelIndex]->setOpacity(255); | ||
46 | + levelViews[_selectedLevelIndex]->setChosen(true, false); | ||
47 | + | ||
48 | + _onLevelChanged = nullptr; | ||
49 | + prepareTouchHandlers(); | ||
50 | + | ||
51 | + return true; | ||
52 | +} | ||
53 | + | ||
54 | +void SimpleLevelPickerView::selectLevelIndex(int index, bool animated){ | ||
55 | + if(_selectedLevelIndex != index){ | ||
56 | + if(animated){ | ||
57 | + levelViews[_selectedLevelIndex]->runAction(cocos2d::FadeOut::create(MiscUtils::StandardAnimationTime)); | ||
58 | + levelViews[_selectedLevelIndex]->setChosen(false, true); | ||
59 | + levelViews[index]->runAction(cocos2d::FadeIn::create(MiscUtils::StandardAnimationTime)); | ||
60 | + levelViews[index]->setChosen(true, true); | ||
61 | + } else { | ||
62 | + levelViews[_selectedLevelIndex]->setOpacity(0); | ||
63 | + levelViews[_selectedLevelIndex]->setChosen(false, false); | ||
64 | + levelViews[index]->setOpacity(255); | ||
65 | + levelViews[index]->setChosen(true, false); | ||
66 | + } | ||
67 | + _selectedLevelIndex = index; | ||
68 | + } | ||
69 | +} | ||
70 | + | ||
71 | +int SimpleLevelPickerView::getPickedLevelIndex(){ | ||
72 | + return _selectedLevelIndex; | ||
73 | +} | ||
74 | + | ||
75 | +void SimpleLevelPickerView::addOnLevelChangedCallback(std::function<void(int)> onLevelChanged){ | ||
76 | + _onLevelChanged = onLevelChanged; | ||
77 | +} | ||
78 | + | ||
79 | +void SimpleLevelPickerView::loadPropertiesFromJSON(const rapidjson::Value& jsonValue, LayoutViewInterface* scene, const std::string resFolder, const std::string altResFolder) | ||
80 | +{ | ||
81 | + setAnchorPoint(cocos2d::Vec2(0.5,0.5)); | ||
82 | + this->loadCommonPropertiesFromJSON(jsonValue); | ||
83 | +} | ||
84 | + | ||
85 | +void SimpleLevelPickerView::prepareTouchHandlers() | ||
86 | +{ | ||
87 | + auto touchListener = cocos2d::EventListenerTouchOneByOne::create(); | ||
88 | + touchListener->onTouchBegan = [&](cocos2d::Touch* touch, cocos2d::Event* event){ | ||
89 | + return GeometryUtils::getBoundingBoxToWorld(this).containsPoint(touch->getLocation()); | ||
90 | +// if(getBoundingBox().containsPoint(touch->getLocation())){ | ||
91 | +// return true; | ||
92 | +// } | ||
93 | +// return false; | ||
94 | + }; | ||
95 | + touchListener->onTouchEnded = [&](cocos2d::Touch* touch, cocos2d::Event* event){ | ||
96 | + | ||
97 | + if(GeometryUtils::getBoundingBoxToWorld(this).containsPoint(touch->getLocation())){ | ||
98 | + selectLevelIndex((_selectedLevelIndex+1)%levelViews.size(), true); | ||
99 | + if(_onLevelChanged != nullptr){ | ||
100 | + _onLevelChanged(_selectedLevelIndex); | ||
101 | + } | ||
102 | + } | ||
103 | + }; | ||
104 | + _eventDispatcher->addEventListenerWithSceneGraphPriority(touchListener, this); | ||
105 | +} | ||
106 | + | ||
107 | + |
ios/Runner/Wowgame/Classes/CustomViews/LevelPickerView/SimpleLevelPickerView.h
0 → 100644
1 | +// | ||
2 | +// SimpleLevelPickerView.h | ||
3 | +// HalloweenSpaceInvaders | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 01/10/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#ifndef SimpleLevelPickerView_h | ||
9 | +#define SimpleLevelPickerView_h | ||
10 | + | ||
11 | +#include "cocos2d.h" | ||
12 | +#include "LevelView.h" | ||
13 | +#include "LayoutObject.h" | ||
14 | + | ||
15 | +class SimpleLevelPickerView : public cocos2d::Node, public LayoutObject { | ||
16 | + | ||
17 | +public: | ||
18 | + static SimpleLevelPickerView* create(std::vector<std::string> levelImagePaths); | ||
19 | + void selectLevelIndex(int index, bool animated); | ||
20 | + int getPickedLevelIndex(); | ||
21 | + void addOnLevelChangedCallback(std::function<void(int)> onLevelChanged); | ||
22 | + | ||
23 | + virtual void loadPropertiesFromJSON(const rapidjson::Value& jsonValue, LayoutViewInterface* scene = NULL, const std::string resFolder = "", const std::string altResFolder = "") override; | ||
24 | + | ||
25 | +protected: | ||
26 | + int _selectedLevelIndex; | ||
27 | + std::vector<LevelView*> levelViews; | ||
28 | + std::function<void(int)> _onLevelChanged; | ||
29 | + | ||
30 | + bool init(std::vector<std::string> levelImagePaths); | ||
31 | + virtual void prepareTouchHandlers(); | ||
32 | + | ||
33 | +}; | ||
34 | + | ||
35 | + | ||
36 | +#endif /* SimpleLevelPickerView_h */ |
ios/Runner/Wowgame/Classes/CustomViews/LevelView.cpp
0 → 100644
1 | +// | ||
2 | +// LevelView.cpp | ||
3 | +// HalloweenSpaceInvaders-mobile | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 27/09/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#include "LevelView.h" | ||
9 | +#include <stdio.h> | ||
10 | +#include <string> | ||
11 | +#include "ScalingUtils.h" | ||
12 | +#include "MathUtils.h" | ||
13 | +#include "MiscUtils.h" | ||
14 | + | ||
15 | +static const float InactivePicScale = 0.8f; | ||
16 | +static const int InactivePicOpacity = 100; | ||
17 | +static const int FloatActionTag = 10; | ||
18 | + | ||
19 | +LevelView* LevelView::create(std::string levelImagePath){ | ||
20 | + LevelView * view = new (std::nothrow) LevelView(); | ||
21 | + if(view && view->init(levelImagePath)) | ||
22 | + { | ||
23 | + view->autorelease(); | ||
24 | + return view; | ||
25 | + } | ||
26 | + CC_SAFE_DELETE(view); | ||
27 | + return nullptr; | ||
28 | +} | ||
29 | + | ||
30 | +LevelView* LevelView::create(std::string levelImagePath, std::string levelName){ | ||
31 | + LevelView * view = new (std::nothrow) LevelView(); | ||
32 | + if(view && view->init(levelImagePath, levelName)) | ||
33 | + { | ||
34 | + view->autorelease(); | ||
35 | + return view; | ||
36 | + } | ||
37 | + CC_SAFE_DELETE(view); | ||
38 | + return nullptr; | ||
39 | +} | ||
40 | + | ||
41 | +bool LevelView::init(std::string levelImagePath){ | ||
42 | + if(!cocos2d::Node::init()){ | ||
43 | + return false; | ||
44 | + } | ||
45 | + | ||
46 | + _bgNode = cocos2d::Sprite::create("graphics/level_halo.png"); | ||
47 | + _pic = cocos2d::Sprite::create(levelImagePath); | ||
48 | + | ||
49 | + addChild(_bgNode); | ||
50 | + addChild(_pic); | ||
51 | + | ||
52 | + setContentSize(_pic->getBoundingBox().size); | ||
53 | + | ||
54 | + auto contentWidth = getContentSize().width; | ||
55 | + auto contentHeight = getContentSize().height; | ||
56 | + _bgNode->setPosition(contentWidth/2, contentHeight/2); | ||
57 | + _pic->setPosition(contentWidth/2, contentHeight/2); | ||
58 | + | ||
59 | + setAnchorPoint(cocos2d::Vec2(0.5,0.5)); | ||
60 | + | ||
61 | + _isChosen = true; | ||
62 | + setChosen(false, false); | ||
63 | + | ||
64 | + return true; | ||
65 | +} | ||
66 | + | ||
67 | +bool LevelView::init(std::string levelImagePath, std::string levelName){ | ||
68 | + if(!init(levelImagePath)){ | ||
69 | + return false; | ||
70 | + } | ||
71 | + | ||
72 | + _label = cocos2d::Label::createWithTTF(levelName, "fonts/ComicSansMSBold.ttf", 100*ScalingUtils::getScaleForFont()); //magic number | ||
73 | + addChild(_label); | ||
74 | + float padding = 50*ScalingUtils::scaleAspectFillToDesignIpadProSize(); //TODO magic number | ||
75 | + setContentSize(cocos2d::Size(getContentSize().width, getContentSize().height+padding+_label->getBoundingBox().size.height)); | ||
76 | + _pic->setPosition(getContentSize().width/2, getContentSize().height - _pic->getBoundingBox().size.height/2 - padding); | ||
77 | + _bgNode->setPosition(_pic->getPosition()); | ||
78 | + _label->setPosition(_pic->getPositionX(), _pic->getBoundingBox().getMinY() - padding - _label->getBoundingBox().size.height/2); | ||
79 | + | ||
80 | +// auto bg = cocos2d::LayerColor::create(cocos2d::Color4B(100,100,255, 255)); | ||
81 | +// bg->setContentSize(getContentSize()); | ||
82 | +// addChild(bg); | ||
83 | +// bg->_setLocalZOrder(-10); | ||
84 | + | ||
85 | + _isChosen = true; | ||
86 | + setChosen(false, false); | ||
87 | + | ||
88 | + return true; | ||
89 | +} | ||
90 | + | ||
91 | +void LevelView::setChosen(bool chosen, bool animated){ | ||
92 | + static cocos2d::Color3B FontColorChosen = cocos2d::Color3B(255, 255, 255); | ||
93 | + static cocos2d::Color3B FontColorDimmed = cocos2d::Color3B(128, 128, 128); | ||
94 | + static float FontScaleChosen = 1.f; | ||
95 | + static float FontScaleSmaller = 0.9f; | ||
96 | + | ||
97 | + if(chosen != _isChosen){ | ||
98 | + _bgNode->stopAllActions(); | ||
99 | + auto newBgNodeOpacity = 255.f; | ||
100 | + auto newPicScale = 1.f; | ||
101 | + auto newPicOpacity = 255; | ||
102 | + if(!chosen){ | ||
103 | + newBgNodeOpacity = 0; | ||
104 | + newPicScale = InactivePicScale; | ||
105 | + newPicOpacity = InactivePicOpacity; | ||
106 | + } | ||
107 | + | ||
108 | + if(animated){ | ||
109 | +// _bgNode->runAction(cocos2d::FadeTo::create(MiscUtils::StandardAnimationTime, newBgNodeOpacity)); | ||
110 | + _pic->runAction(cocos2d::Spawn::create(cocos2d::ScaleTo::create(MiscUtils::StandardAnimationTime, newPicScale), | ||
111 | + cocos2d::FadeTo::create(MiscUtils::StandardAnimationTime, newPicOpacity), nullptr)); | ||
112 | + _bgNode->runAction(cocos2d::FadeTo::create(MiscUtils::StandardAnimationTime, newBgNodeOpacity)); | ||
113 | + if(_label != nullptr){ | ||
114 | + _label->runAction(cocos2d::TintTo::create(MiscUtils::StandardAnimationTime, (chosen? FontColorChosen : FontColorDimmed))); | ||
115 | + _label->runAction(cocos2d::ScaleTo::create(MiscUtils::StandardAnimationTime, (chosen? FontScaleChosen : FontScaleSmaller))); | ||
116 | + } | ||
117 | + | ||
118 | + } else { | ||
119 | + _bgNode->setOpacity(newBgNodeOpacity); | ||
120 | + _pic->setScale(newPicScale, newPicScale); | ||
121 | + _pic->setOpacity(newPicOpacity); | ||
122 | + if(_label != nullptr){ | ||
123 | + _label->setColor(chosen? FontColorChosen : FontColorDimmed); | ||
124 | + _label->setScale(chosen ? FontScaleChosen : FontScaleSmaller); | ||
125 | + } | ||
126 | + } | ||
127 | + _isChosen = chosen; | ||
128 | + } | ||
129 | +} | ||
130 | + | ||
131 | +void LevelView::loadPropertiesFromJSON(const rapidjson::Value& jsonValue, LayoutViewInterface* scene, const std::string resFolder, const std::string altResFolder) | ||
132 | +{ | ||
133 | + this->loadCommonPropertiesFromJSON(jsonValue); | ||
134 | + if(jsonValue.HasMember("opacity")){ | ||
135 | + auto opacity = jsonValue["opacity"].GetInt(); | ||
136 | + _pic->setOpacity(opacity); | ||
137 | + } | ||
138 | +} | ||
139 | + | ||
140 | +void LevelView::startFloating(){ | ||
141 | + _isFloating = true; | ||
142 | + _circleMidPoint = getPosition(); | ||
143 | + _floatDirection = 1; | ||
144 | + doFloat(true); | ||
145 | +} | ||
146 | + | ||
147 | +void LevelView::stopFloating(){ | ||
148 | + if(_isFloating){ | ||
149 | + _isFloating = false; | ||
150 | + stopActionByTag(FloatActionTag); | ||
151 | + } | ||
152 | +} | ||
153 | + | ||
154 | +void LevelView::doFloat(bool start){ | ||
155 | + float radiusX = getContentSize().height/100; | ||
156 | + float radiusY = getContentSize().height/16; | ||
157 | + float newX = _circleMidPoint.x + MathUtils::getRandom(-radiusX, radiusX); | ||
158 | + float newY = _circleMidPoint.y + radiusY*_floatDirection; | ||
159 | + auto animationTime = start ? 0.8 : 1.6f; | ||
160 | + auto floatAction = cocos2d::Sequence::create(cocos2d::EaseInOut::create(cocos2d::MoveTo::create(animationTime, cocos2d::Vec2(newX, newY)), 2), cocos2d::CallFunc::create([&](){ | ||
161 | + doFloat(); | ||
162 | + }), nullptr); | ||
163 | + floatAction->setTag(FloatActionTag); | ||
164 | + runAction(floatAction); | ||
165 | + _floatDirection *= -1; | ||
166 | +} | ||
167 | + | ||
168 | +void LevelView::flash(){ | ||
169 | + auto halfDuration = MiscUtils::StandardAnimationTime*2; | ||
170 | + if(_bgNode != nullptr){ | ||
171 | + auto flashAction = cocos2d::Sequence::create(cocos2d::EaseInOut::create(cocos2d::FadeIn::create(halfDuration),2), | ||
172 | + cocos2d::EaseInOut::create(cocos2d::FadeOut::create(halfDuration),2),nullptr); | ||
173 | + _bgNode->runAction(flashAction); | ||
174 | + } | ||
175 | + if(_pic != nullptr){ | ||
176 | + auto lastOpacity = _pic->getOpacity(); | ||
177 | + _pic->runAction(cocos2d::Sequence::create(cocos2d::EaseInOut::create(cocos2d::FadeIn::create(halfDuration), 2), | ||
178 | + cocos2d::EaseInOut::create(cocos2d::FadeTo::create(halfDuration, lastOpacity), 2), nullptr)); | ||
179 | + } | ||
180 | +} | ||
181 | + | ||
182 | +void LevelView::changePicture(std::string newPicturePath){ | ||
183 | + auto oldOpacity = _pic->getOpacity(); | ||
184 | + _pic->removeFromParent(); | ||
185 | + _pic = cocos2d::Sprite::create(newPicturePath); | ||
186 | + addChild(_pic); | ||
187 | + setContentSize(_pic->getBoundingBox().size); | ||
188 | + | ||
189 | + auto contentWidth = getContentSize().width; | ||
190 | + auto contentHeight = getContentSize().height; | ||
191 | + _bgNode->setPosition(contentWidth/2, contentHeight/2); | ||
192 | + _pic->setPosition(contentWidth/2, contentHeight/2); | ||
193 | + | ||
194 | + if(_label != nullptr){ | ||
195 | + float padding = 50*ScalingUtils::scaleAspectFillToDesignIpadProSize(); //TODO magic number | ||
196 | + setContentSize(cocos2d::Size(getContentSize().width, getContentSize().height+padding+_label->getBoundingBox().size.height)); | ||
197 | + _pic->setPosition(getContentSize().width/2, getContentSize().height - _pic->getBoundingBox().size.height/2 - padding); | ||
198 | + _bgNode->setPosition(_pic->getPosition()); | ||
199 | + _label->setPosition(_pic->getPositionX(), _pic->getBoundingBox().getMinY() - padding - _label->getBoundingBox().size.height/2); | ||
200 | + } | ||
201 | + | ||
202 | + setChosen(_isChosen, false); | ||
203 | + _pic->setOpacity(oldOpacity); | ||
204 | + | ||
205 | +} |
ios/Runner/Wowgame/Classes/CustomViews/LevelView.h
0 → 100644
1 | +// | ||
2 | +// LevelView.h | ||
3 | +// HalloweenSpaceInvaders | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 27/09/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#ifndef LevelView_h | ||
9 | +#define LevelView_h | ||
10 | + | ||
11 | +#include "cocos2d.h" | ||
12 | +#include <string> | ||
13 | +#include "LayoutObject.h" | ||
14 | + | ||
15 | +class LevelView : public cocos2d::Node, public LayoutObject { | ||
16 | + | ||
17 | +public: | ||
18 | + static LevelView* create(std::string levelImagePath); | ||
19 | + static LevelView* create(std::string levelImagePath, std::string levelName); | ||
20 | + void setChosen(bool chosen, bool animated = true); | ||
21 | + void changePicture(std::string newPicturePath); | ||
22 | + | ||
23 | + virtual void loadPropertiesFromJSON(const rapidjson::Value& jsonValue, LayoutViewInterface* scene = NULL, const std::string resFolder = "", const std::string altResFolder = "") override; | ||
24 | + | ||
25 | + void startFloating(); | ||
26 | + void stopFloating(); | ||
27 | + virtual void doFloat(bool start = false); | ||
28 | + void flash(); | ||
29 | + | ||
30 | +protected: | ||
31 | + bool _isChosen; | ||
32 | + bool _isFloating; | ||
33 | + int _floatDirection; | ||
34 | + cocos2d::Point _circleMidPoint; | ||
35 | + cocos2d::Sprite* _bgNode; | ||
36 | + cocos2d::Sprite* _pic; | ||
37 | + cocos2d::Label* _label; | ||
38 | + | ||
39 | + bool init(std::string levelImagePath); | ||
40 | + bool init(std::string levelImagePath, std::string levelName); | ||
41 | +}; | ||
42 | + | ||
43 | + | ||
44 | +#endif /* LevelView_h */ |
ios/Runner/Wowgame/Classes/CustomViews/ParentalGateShowInterface.cpp
0 → 100644
1 | +// | ||
2 | +// ParentalGateShowInterface.cpp | ||
3 | +// Steve and Maggie Halloween | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 14/10/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#include "ParentalGateShowInterface.h" | ||
9 | +#include "MiscUtils.h" | ||
10 | +#include "ParentalGateView.h" | ||
11 | + | ||
12 | +static int ParentalGateViewTag = 90; | ||
13 | + | ||
14 | +void ParentalGateShowInterface::presentParentalGate(std::function<void()> onSuccessCallback, std::function<void()> onFailureCallback){ | ||
15 | + _isPresentingParentalGate = true; | ||
16 | + auto screenSize = cocos2d::Director::getInstance()->getWinSize(); | ||
17 | + auto parentalGate = ParentalGateView::create(screenSize.width, screenSize.height, onSuccessCallback, onFailureCallback); | ||
18 | + parentalGate->setTag(ParentalGateViewTag); | ||
19 | + PGSI_addChild(parentalGate); | ||
20 | + parentalGate->setLocalZOrder(1000); | ||
21 | + | ||
22 | + parentalGate->setPosition(cocos2d::Vec2(0, 0)); | ||
23 | + parentalGate->setCascadeOpacityEnabled(true); | ||
24 | + | ||
25 | + auto touchListener = cocos2d::EventListenerTouchOneByOne::create(); | ||
26 | + touchListener->setSwallowTouches(true); | ||
27 | + touchListener->onTouchBegan = [&](cocos2d::Touch* touch, cocos2d::Event* event){ | ||
28 | + return true; | ||
29 | + }; | ||
30 | + PGSI_getEventDispatcher()->addEventListenerWithSceneGraphPriority(touchListener, parentalGate); | ||
31 | + // #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) | ||
32 | + // auto keyboardListener = cocos2d::EventListenerKeyboard::create(); | ||
33 | + // keyboardListener->onKeyReleased = [&](cocos2d::EventKeyboard::KeyCode keyCode, cocos2d::Event* event){ | ||
34 | + // if(keyCode == cocos2d::EventKeyboard::KeyCode::KEY_BACK){ | ||
35 | + // hideParentalGate(); | ||
36 | + // } | ||
37 | + // }; | ||
38 | + // _eventDispatcher->addEventListenerWithSceneGraphPriority(keyboardListener, parentalGate); | ||
39 | + // #endif | ||
40 | + | ||
41 | + parentalGate->stopAllActions(); | ||
42 | + parentalGate->setOpacity(0); | ||
43 | + parentalGate->runAction(cocos2d::FadeIn::create(MiscUtils::StandardAnimationTime)); | ||
44 | +} | ||
45 | + | ||
46 | +void ParentalGateShowInterface::hideParentalGate(){ | ||
47 | + _isPresentingParentalGate = false; | ||
48 | + auto parentalGate = PGSI_getChildByTag(ParentalGateViewTag); | ||
49 | + if(parentalGate != nullptr){ | ||
50 | + parentalGate->stopAllActions(); | ||
51 | + PGSI_getEventDispatcher()->removeEventListenersForTarget(parentalGate); | ||
52 | + MiscUtils::hideAndRemoveView(parentalGate, true); | ||
53 | + } | ||
54 | +} |
ios/Runner/Wowgame/Classes/CustomViews/ParentalGateShowInterface.h
0 → 100644
1 | +// | ||
2 | +// ParentalGateShowInterface.h | ||
3 | +// HalloweenSpaceInvaders | ||
4 | +// | ||
5 | +// Created by Katarzyna Kalinowska-Górska on 14/10/2019. | ||
6 | +// | ||
7 | + | ||
8 | +#ifndef ParentalGateShowInterface_h | ||
9 | +#define ParentalGateShowInterface_h | ||
10 | + | ||
11 | +#include "ParentalGateView.h" | ||
12 | +#include "cocos2d.h" | ||
13 | + | ||
14 | +class ParentalGateShowInterface { | ||
15 | + | ||
16 | +public: | ||
17 | + virtual ~ParentalGateShowInterface(){} | ||
18 | + bool isShowingParentalGate(){return _isPresentingParentalGate;}; | ||
19 | + virtual void presentParentalGate(std::function<void()> onSuccessCallback, std::function<void()> onFailureCallback); | ||
20 | + virtual void hideParentalGate(); | ||
21 | + virtual void PGSI_addChild(cocos2d::Node* n) { | ||
22 | + auto selfNode = dynamic_cast<cocos2d::Node*>(this); | ||
23 | + if(selfNode != nullptr){ | ||
24 | + selfNode->addChild(n); | ||
25 | + } | ||
26 | + } | ||
27 | + virtual cocos2d::Node* PGSI_getChildByTag(int t) { | ||
28 | + auto selfNode = dynamic_cast<cocos2d::Node*>(this); | ||
29 | + if(selfNode != nullptr){ | ||
30 | + return selfNode->getChildByTag(t); | ||
31 | + } | ||
32 | + return nullptr; | ||
33 | + } | ||
34 | + virtual cocos2d::EventDispatcher* PGSI_getEventDispatcher(){ | ||
35 | + auto selfNode = dynamic_cast<cocos2d::Node*>(this); | ||
36 | + if(selfNode != nullptr){ | ||
37 | + return selfNode->getEventDispatcher(); | ||
38 | + } | ||
39 | + return nullptr; | ||
40 | + } | ||
41 | + | ||
42 | +protected: | ||
43 | + bool _isPresentingParentalGate; | ||
44 | + | ||
45 | +}; | ||
46 | + | ||
47 | +#endif /* ParentalGateShowInterface_h */ |
ios/Runner/Wowgame/Classes/CustomViews/ParentalGateView.cpp
0 → 100644
1 | +// | ||
2 | +// Created by Katarzyna Kalinowska-Górska on 2019-10-07. | ||
3 | +// | ||
4 | + | ||
5 | +#include "ParentalGateView.h" | ||
6 | +#include "ScalingUtils.h" | ||
7 | +#include "SimpleButton.h" | ||
8 | +#include "MathUtils.h" | ||
9 | + | ||
10 | +const std::vector<const char*> ParentalGateView::KKTextDigit::DigitNames = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"}; | ||
11 | + | ||
12 | +ParentalGateView* ParentalGateView::create(float width, float height, std::function<void()> onSuccessCallback,std::function<void()> onFailureCallback){ | ||
13 | + ParentalGateView * view = new (std::nothrow) ParentalGateView(); | ||
14 | + if(view && view->init(width, height, onSuccessCallback, onFailureCallback)) | ||
15 | + { | ||
16 | + view->autorelease(); | ||
17 | + return view; | ||
18 | + } | ||
19 | + CC_SAFE_DELETE(view); | ||
20 | + return nullptr; | ||
21 | +} | ||
22 | + | ||
23 | +bool ParentalGateView::init(float width, float height, std::function<void()> onSuccessCallback,std::function<void()> onFailureCallback){ | ||
24 | + | ||
25 | + if(!cocos2d::LayerColor::initWithColor(cocos2d::Color4B(40, 40, 70, 240), width, height)){ | ||
26 | + return false; | ||
27 | + } | ||
28 | + | ||
29 | + _onSuccessCallback = onSuccessCallback; | ||
30 | + _onFailureCallback = onFailureCallback; | ||
31 | + setupAppearance(); | ||
32 | + setupLogic(); | ||
33 | + setCascadeOpacityEnabled(true); | ||
34 | + | ||
35 | + return true; | ||
36 | +} | ||
37 | + | ||
38 | +void ParentalGateView::setupAppearance(){ | ||
39 | + | ||
40 | + auto wholeContainer = cocos2d::Node::create(); | ||
41 | + addChild(wholeContainer); | ||
42 | + wholeContainer->setCascadeOpacityEnabled(true); | ||
43 | + | ||
44 | + // // add the instruction label | ||
45 | + auto instructionLabel1 = cocos2d::Label::createWithTTF("Are you a parent?", "fonts/ComicSansMSBold.ttf", 120*ScalingUtils::getScaleForFont()); //TODO magic number, hard-coded text | ||
46 | + instructionLabel1->setColor(cocos2d::Color3B(200, 200, 200)); | ||
47 | + auto instructionLabel2 = cocos2d::Label::createWithTTF("To continue, tap:", "fonts/ComicSansMSRegular.ttf", 100*ScalingUtils::getScaleForFont()); //TODO magic number, hard-coded text | ||
48 | + instructionLabel2->setColor(cocos2d::Color3B(200, 200, 200)); | ||
49 | + digitsLabel = cocos2d::Label::createWithTTF("seven, seven, seven", "fonts/ComicSansMSBold.ttf", 110*ScalingUtils::getScaleForFont()); | ||
50 | + digitsLabel->setColor(cocos2d::Color3B(160, 130, 160)); | ||
51 | + wholeContainer->addChild(instructionLabel1); | ||
52 | + wholeContainer->addChild(instructionLabel2); | ||
53 | + wholeContainer->addChild(digitsLabel); | ||
54 | + | ||
55 | + auto buttonPadding = 20*ScalingUtils::scaleAspectFillToDesignIpadProSize(); | ||
56 | + float digitButtonSide = 0; | ||
57 | + auto buttonContainer = cocos2d::Node::create(); | ||
58 | + buttonContainer->setCascadeOpacityEnabled(true); | ||
59 | + for(int i = 1; i <= 9; ++i){ | ||
60 | + auto digitButton = SimpleButton::create(); | ||
61 | + auto digitButtonBgTexturePath = randomButtonBgImagePath(); | ||
62 | + digitButton->loadTextures(digitButtonBgTexturePath, digitButtonBgTexturePath, digitButtonBgTexturePath); | ||
63 | + digitButton->setCascadeOpacityEnabled(true); | ||
64 | + auto label = cocos2d::Label::createWithTTF(std::to_string(i), "fonts/ComicSansMSBold.ttf", 110*ScalingUtils::getScaleForFont()); | ||
65 | + label->setColor(cocos2d::Color3B(0, 0, 0)); | ||
66 | + label->setAnchorPoint(cocos2d::Vec2(0.5, 0.5)); | ||
67 | + label->setPosition(cocos2d::Vec2(digitButton->getBoundingBox().size.width/2, digitButton->getBoundingBox().size.height/2)); | ||
68 | + digitButton->addChild(label); | ||
69 | + buttonContainer->addChild(digitButton); | ||
70 | + auto iMult = (i-1)%3+1; | ||
71 | + digitButton->setPositionX(buttonPadding*iMult + digitButton->getBoundingBox().size.width*(iMult-0.5)); | ||
72 | + auto yMult = 1; | ||
73 | + if(i > 6) yMult = 3; | ||
74 | + else if(i > 3) yMult = 2; | ||
75 | + yMult = 4 - yMult; | ||
76 | + digitButton->setPositionY(buttonPadding*yMult + digitButton->getBoundingBox().size.height*(yMult-0.5)); | ||
77 | + digitButtonSide = MAX(digitButtonSide, MAX(digitButton->getBoundingBox().size.width, digitButton->getBoundingBox().size.height)); | ||
78 | + digitButton->objectName = KKTextDigit::DigitNames[i]; | ||
79 | + digitButton->setOnTouchEndedCallback([&](std::string name, cocos2d::ui::Widget::TouchEventType eventType){ | ||
80 | + digitButtonPressed(name); | ||
81 | + }); | ||
82 | + } | ||
83 | + | ||
84 | + auto buttonContainerSide = 3*digitButtonSide+5*buttonPadding; | ||
85 | + buttonContainer->setContentSize(cocos2d::Size(buttonContainerSide, buttonContainerSide)); | ||
86 | + wholeContainer->addChild(buttonContainer); | ||
87 | + | ||
88 | +// auto nevermindButton = SimpleButton::create(); | ||
89 | +// auto nevermindLabel = cocos2d::Label::createWithTTF("Never mind", "fonts/ComicSansMSRegular.ttf", 110*ScalingUtils::getScaleForFont()); //TODO magic number, hard-coded text | ||
90 | +// nevermindLabel->setAnchorPoint(cocos2d::Vec2(0.5, 0.5)); | ||
91 | +// nevermindButton->addChild(nevermindLabel); | ||
92 | +//// nevermindButton->loadText | ||
93 | +// nevermindButton->setContentSize(nevermindLabel->getContentSize()); | ||
94 | +// nevermindLabel->setPosition(nevermindButton->getContentSize().width/2, nevermindButton->getContentSize().height/2); | ||
95 | +// wholeContainer->addChild(nevermindButton); | ||
96 | + | ||
97 | + auto wholeWidth = MAX(buttonContainer->getContentSize().width, instructionLabel1->getBoundingBox().size.width); | ||
98 | + auto wholeHeight = buttonContainer->getContentSize().height + instructionLabel1->getBoundingBox().size.height + instructionLabel2->getBoundingBox().size.height + digitsLabel->getBoundingBox().size.height;// + nevermindButton->getBoundingBox().size.height; | ||
99 | + wholeContainer->setContentSize(cocos2d::Size(wholeWidth, wholeHeight)); | ||
100 | + wholeContainer->setAnchorPoint(cocos2d::Vec2(0.5, 0.5)); | ||
101 | + wholeContainer->setPosition(getContentSize().width/2, getContentSize().height/2); | ||
102 | + | ||
103 | + buttonContainer->setAnchorPoint(cocos2d::Vec2(0.5,0)); | ||
104 | + buttonContainer->setPositionX(wholeWidth/2); | ||
105 | + buttonContainer->setPositionY(0);//nevermindButton->getBoundingBox().size.height); | ||
106 | + | ||
107 | + instructionLabel1->setPosition(wholeWidth/2, wholeHeight - instructionLabel1->getBoundingBox().size.height/2); | ||
108 | + instructionLabel2->setPosition(wholeWidth/2, instructionLabel1->getBoundingBox().getMinY() - instructionLabel2->getBoundingBox().size.height/2); | ||
109 | + digitsLabel->setPosition(wholeWidth/2, instructionLabel2->getBoundingBox().getMinY() - digitsLabel->getBoundingBox().size.height/2); | ||
110 | + | ||
111 | +// nevermindButton->setAnchorPoint(cocos2d::Vec2(1, 0)); | ||
112 | +// nevermindButton->setPosition(cocos2d::Vec2(wholeWidth, 0)); | ||
113 | + | ||
114 | +} | ||
115 | + | ||
116 | +void ParentalGateView::setupLogic(){ | ||
117 | + correctDigitSequence = generateTextDigits(3); | ||
118 | + currentIndex = 0; | ||
119 | + updateDigitsLabel(); | ||
120 | +} | ||
121 | + | ||
122 | +std::vector<ParentalGateView::KKTextDigit> ParentalGateView::generateTextDigits(int digitsCount){ | ||
123 | + std::vector<KKTextDigit> digits; | ||
124 | + for(int i = 0; i < digitsCount; ++i){ | ||
125 | + auto newDigit = KKTextDigit(MathUtils::getRandomInt(1, 9)); | ||
126 | + digits.push_back(newDigit); | ||
127 | + } | ||
128 | + return digits; | ||
129 | +} | ||
130 | + | ||
131 | +void ParentalGateView::updateDigitsLabel(){ | ||
132 | + std::string digitString = ""; | ||
133 | + for(int i = currentIndex; i < correctDigitSequence.size(); ++i){ | ||
134 | + digitString += correctDigitSequence[i].text; | ||
135 | + if(i < correctDigitSequence.size()-1){ | ||
136 | + digitString += ", "; | ||
137 | + } | ||
138 | + } | ||
139 | + digitsLabel->setString(digitString); | ||
140 | +} | ||
141 | + | ||
142 | +std::string ParentalGateView::randomButtonBgImagePath(){ | ||
143 | + auto index = MathUtils::getRandomInt(1, 16); | ||
144 | + switch (index%4) { | ||
145 | + case 1: | ||
146 | + return "buttons/graphics/button_yellow.png"; | ||
147 | + break; | ||
148 | + case 2: | ||
149 | + return "buttons/graphics/button_orange.png"; | ||
150 | + break; | ||
151 | + case 3: | ||
152 | + return "buttons/graphics/button_grey.png"; | ||
153 | + break; | ||
154 | + default: | ||
155 | + return "buttons/graphics/button_purple.png"; | ||
156 | + break; | ||
157 | + } | ||
158 | +} | ||
159 | + | ||
160 | +void ParentalGateView::digitButtonPressed(std::string digitName){ | ||
161 | + if(currentIndex < 0 || currentIndex >= correctDigitSequence.size()){ | ||
162 | + return; | ||
163 | + } | ||
164 | + | ||
165 | + if(digitName == correctDigitSequence[currentIndex].text){ | ||
166 | + if(currentIndex == correctDigitSequence.size()-1){ | ||
167 | + currentIndex = -1; | ||
168 | + _onSuccessCallback(); | ||
169 | + } else { | ||
170 | + ++currentIndex; | ||
171 | + updateDigitsLabel(); | ||
172 | + } | ||
173 | + } else { | ||
174 | + currentIndex = -1; | ||
175 | + _onFailureCallback(); | ||
176 | + } | ||
177 | +} | ||
178 | + | ||
179 | +//private func scaleSelfToHeight() { | ||
180 | +// let screenHeight = UIScreen.main.bounds.height | ||
181 | +// if(screenHeight < windowHeightConstraint.constant){ | ||
182 | +// let scale : CGFloat = screenHeight / windowHeightConstraint.constant; | ||
183 | +// WOWScalingUtils.scaleAllDistances(inView: self.view, withScale: scale) | ||
184 | +// WOWScalingUtils.scaleFonts(inView: self.view, withScale: scale) | ||
185 | +// } else { | ||
186 | +// WOWScalingUtils.ultimateScaleAllToIpadProDesign(inView: self.view) | ||
187 | +// } | ||
188 | +//} | ||
189 | +// | ||
190 | +//} |
ios/Runner/Wowgame/Classes/CustomViews/ParentalGateView.h
0 → 100644
1 | +// | ||
2 | +// Created by Katarzyna Kalinowska-Górska on 2019-10-07. | ||
3 | +// | ||
4 | + | ||
5 | +#ifndef PROJ_ANDROID_PARENTALGATEVIEW_H | ||
6 | +#define PROJ_ANDROID_PARENTALGATEVIEW_H | ||
7 | + | ||
8 | +#include "cocos2d.h" | ||
9 | +#include <vector> | ||
10 | + | ||
11 | +class ParentalGateView : public cocos2d::LayerColor { | ||
12 | +public: | ||
13 | + static ParentalGateView* create(float width, float height, std::function<void()> onSuccessCallback,std::function<void()> onFailureCallback); | ||
14 | + virtual ~ParentalGateView(){} | ||
15 | + | ||
16 | +protected: | ||
17 | + | ||
18 | + struct KKTextDigit { | ||
19 | + static const std::vector<const char*> DigitNames; | ||
20 | + int digit; | ||
21 | + const char* text; | ||
22 | + | ||
23 | + KKTextDigit(int pDigit) { | ||
24 | + assert(pDigit >= 0 && pDigit <= 9); | ||
25 | + digit = pDigit; | ||
26 | + text = DigitNames[digit]; | ||
27 | + } | ||
28 | + }; | ||
29 | + | ||
30 | + | ||
31 | + std::function<void()> _onSuccessCallback; | ||
32 | + std::function<void()> _onFailureCallback; | ||
33 | + cocos2d::Label* digitsLabel; | ||
34 | + std::vector<KKTextDigit> correctDigitSequence; | ||
35 | + int currentIndex; | ||
36 | + | ||
37 | + bool init(float width, float height, std::function<void()> onSuccessCallback,std::function<void()> onFailureCallback); | ||
38 | + void setupAppearance(); | ||
39 | + void setupLogic(); | ||
40 | + std::vector<KKTextDigit> generateTextDigits(int digitsCount); | ||
41 | + std::string randomButtonBgImagePath(); | ||
42 | + void highlightTextDigit(int atIndex); | ||
43 | + void digitButtonPressed(std::string digitName); | ||
44 | + void updateDigitsLabel(); | ||
45 | +}; | ||
46 | + | ||
47 | + | ||
48 | +#endif //PROJ_ANDROID_PARENTALGATEVIEW_H |