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 | 17 | 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; |
18 | 18 | 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; |
19 | 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 | 283 | F5FCE34FB9E028C20A7850DE /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2A3DBEAB6142776646A34D9C /* Pods_RunnerTests.framework */; }; |
21 | 284 | FB8AFCB0A8C34B5508A68F45 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6DEBBC1D861BE053F3ECE0B9 /* Pods_Runner.framework */; }; |
22 | 285 | /* End PBXBuildFile section */ |
... | ... | @@ -113,6 +376,90 @@ |
113 | 376 | remoteGlobalIDString = B7090455528040A188F88B63; |
114 | 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 | 463 | /* End PBXContainerItemProxy section */ |
117 | 464 | |
118 | 465 | /* Begin PBXCopyFilesBuildPhase section */ |
... | ... | @@ -123,152 +470,1652 @@ |
123 | 470 | dstSubfolderSpec = 10; |
124 | 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 | 1724 | isa = PBXGroup; |
184 | 1725 | children = ( |
185 | - 331C807B294A618700263BE5 /* RunnerTests.swift */, | |
1726 | + B891A3432BCD13AB006CB06E /* g_pick_level.mp3 */, | |
186 | 1727 | ); |
187 | - path = RunnerTests; | |
1728 | + path = level_picking; | |
188 | 1729 | sourceTree = "<group>"; |
189 | 1730 | }; |
190 | - 340CE8403EC22FE8EE1FA3EF /* Pods */ = { | |
1731 | + B891A3452BCD13AB006CB06E /* sounds */ = { | |
191 | 1732 | isa = PBXGroup; |
192 | 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 | 1738 | sourceTree = "<group>"; |
202 | 1739 | }; |
203 | - 9740EEB11CF90186004384FC /* Flutter */ = { | |
1740 | + B891A3462BCD13AB006CB06E /* common */ = { | |
204 | 1741 | isa = PBXGroup; |
205 | 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 | 1747 | sourceTree = "<group>"; |
213 | 1748 | }; |
214 | - 97C146E51CF9000F007C117D = { | |
1749 | + B891A34D2BCD13AB006CB06E /* app_links */ = { | |
215 | 1750 | isa = PBXGroup; |
216 | 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 | 1760 | sourceTree = "<group>"; |
226 | 1761 | }; |
227 | - 97C146EF1CF9000F007C117D /* Products */ = { | |
1762 | + B891A35E2BCD13AB006CB06E /* graphics */ = { | |
228 | 1763 | isa = PBXGroup; |
229 | 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 | 1783 | sourceTree = "<group>"; |
235 | 1784 | }; |
236 | - 97C146F01CF9000F007C117D /* Runner */ = { | |
1785 | + B891A3602BCD13AB006CB06E /* buttons */ = { | |
237 | 1786 | isa = PBXGroup; |
238 | 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 | 1792 | sourceTree = "<group>"; |
254 | 1793 | }; |
255 | - B852D3EE2BCADF3600A53FC4 /* Products */ = { | |
1794 | + B891A3642BCD13AB006CB06E /* levels */ = { | |
256 | 1795 | isa = PBXGroup; |
257 | 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 | 2119 | sourceTree = "<group>"; |
273 | 2120 | }; |
274 | 2121 | E653501EF99460B1BB76C5EE /* Frameworks */ = { |
... | ... | @@ -315,10 +2162,54 @@ |
315 | 2162 | 3B06AD1E1E4923F5004D2608 /* Thin Binary */, |
316 | 2163 | 7C15D12B84189A796384E28E /* [CP] Embed Pods Frameworks */, |
317 | 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 | 2198 | buildRules = ( |
320 | 2199 | ); |
321 | 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 | 2214 | name = Runner; |
324 | 2215 | productName = Runner; |
... | ... | @@ -602,11 +2493,54 @@ |
602 | 2493 | isa = PBXSourcesBuildPhase; |
603 | 2494 | buildActionMask = 2147483647; |
604 | 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 | 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 | 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 | 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 | 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 | 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 | 2545 | runOnlyForDeploymentPostprocessing = 0; |
612 | 2546 | }; |
... | ... | @@ -618,6 +2552,66 @@ |
618 | 2552 | target = 97C146ED1CF9000F007C117D /* Runner */; |
619 | 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 | 2615 | /* End PBXTargetDependency section */ |
622 | 2616 | |
623 | 2617 | /* Begin PBXVariantGroup section */ |
... | ... | @@ -706,6 +2700,131 @@ |
706 | 2700 | "@executable_path/Frameworks", |
707 | 2701 | ); |
708 | 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 | 2828 | PRODUCT_BUNDLE_IDENTIFIER = com.kouyuxingqiu.wowenglish; |
710 | 2829 | PRODUCT_NAME = "$(TARGET_NAME)"; |
711 | 2830 | SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; |
... | ... | @@ -714,6 +2833,39 @@ |
714 | 2833 | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; |
715 | 2834 | SWIFT_VERSION = 5.0; |
716 | 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 | 2869 | VERSIONING_SYSTEM = "apple-generic"; |
718 | 2870 | }; |
719 | 2871 | name = Profile; |
... | ... | @@ -885,12 +3037,154 @@ |
885 | 3037 | CURRENT_PROJECT_VERSION = 2; |
886 | 3038 | DEVELOPMENT_TEAM = T8P9KW8GWH; |
887 | 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 | 3062 | INFOPLIST_FILE = Runner/Info.plist; |
889 | 3063 | LD_RUNPATH_SEARCH_PATHS = ( |
890 | 3064 | "$(inherited)", |
891 | 3065 | "@executable_path/Frameworks", |
892 | 3066 | ); |
893 | 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 | 3188 | PRODUCT_BUNDLE_IDENTIFIER = com.kouyuxingqiu.wowenglish; |
895 | 3189 | PRODUCT_NAME = "$(TARGET_NAME)"; |
896 | 3190 | SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; |
... | ... | @@ -900,6 +3194,39 @@ |
900 | 3194 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; |
901 | 3195 | SWIFT_VERSION = 5.0; |
902 | 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 | 3230 | VERSIONING_SYSTEM = "apple-generic"; |
904 | 3231 | }; |
905 | 3232 | name = Debug; |
... | ... | @@ -920,6 +3247,131 @@ |
920 | 3247 | "@executable_path/Frameworks", |
921 | 3248 | ); |
922 | 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 | 3375 | PRODUCT_BUNDLE_IDENTIFIER = com.kouyuxingqiu.wowenglish; |
924 | 3376 | PRODUCT_NAME = "$(TARGET_NAME)"; |
925 | 3377 | SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; |
... | ... | @@ -928,6 +3380,39 @@ |
928 | 3380 | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; |
929 | 3381 | SWIFT_VERSION = 5.0; |
930 | 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 | 3416 | VERSIONING_SYSTEM = "apple-generic"; |
932 | 3417 | }; |
933 | 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 | ... | ... |