Commit cd7f9ec5 cd7f9ec5bacb2e9f784a0e162d1351ea8b555573 by jinwawa

0618

1 parent 5d27305d
Showing 1000 changed files with 375 additions and 744 deletions

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

...@@ -43,4 +43,11 @@ ...@@ -43,4 +43,11 @@
43 <pay id="202" name="年卡(365天)" type="2" des="年卡" day="365" item="100001,2000;600002,5;200001,1" payitem="" rmb="198.0" product="dclybn198" productPuTao="qjqp202" notice="1"/> 43 <pay id="202" name="年卡(365天)" type="2" des="年卡" day="365" item="100001,2000;600002,5;200001,1" payitem="" rmb="198.0" product="dclybn198" productPuTao="qjqp202" notice="1"/>
44 <pay id="301" name="自动续包月卡(31天)" type="2" des="月卡" day="31" item="100001,1000;600001,5" payitem="" rmb="20.0" product="tjlhdcylyby020@207" productPuTao="qjqp999" notice="1"/> 44 <pay id="301" name="自动续包月卡(31天)" type="2" des="月卡" day="31" item="100001,1000;600001,5" payitem="" rmb="20.0" product="tjlhdcylyby020@207" productPuTao="qjqp999" notice="1"/>
45 </platform> 45 </platform>
46 <!--上海电信-->
47 <platform id="106" channel="shdx">
48 <pay id="201" name="月卡(31天)" type="2" des="4k动漫vip单月包" day="31" item="100001,1000;600001,5" payitem="" rmb="69.0" product="1000710508" productPuTao="qjqp201" notice="1"/>
49 <pay id="202" name="年卡(365天)" type="2" des="4k动漫vip年包" day="365" item="100001,2000;600002,5;200001,1" payitem="" rmb="299.0" product="1000710226" productPuTao="qjqp202" notice="1"/>
50 <pay id="301" name="自动续包月卡(31天)" type="2" des="4K动漫vip包" day="31" item="100001,1000;600001,5" payitem="" rmb="49.0" product="1000709506" productPuTao="qjqp999" notice="1"/>
51 </platform>
52
46 </root> 53 </root>
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -2296,7 +2296,7 @@ ...@@ -2296,7 +2296,7 @@
2296 skill中的数字表示AI宠物的技能开启和玩家的差异。“1”代表需要比玩家多1个宠物开启了技能。 2296 skill中的数字表示AI宠物的技能开启和玩家的差异。“1”代表需要比玩家多1个宠物开启了技能。
2297 --> 2297 -->
2298 2298
2299 <user id="1001" name="对手1001" pk_val="500" petstar="1,2" lv="1,2" skill="1"> 2299 <user id="1001" name="对手1001" pk_val="500" petstar="0,0" lv="0,0" skill="0">
2300 <!-- 2300 <!--
2301 id//id 2301 id//id
2302 lv//等级 2302 lv//等级
...@@ -2366,7 +2366,7 @@ ...@@ -2366,7 +2366,7 @@
2366 2366
2367 </user> 2367 </user>
2368 2368
2369 <user id="1002" name="对手1002" pk_val="1000" petstar="1,2" lv="1,2" skill="1"> 2369 <user id="1002" name="对手1002" pk_val="1000" petstar="0,0" lv="0,0" skill="1">
2370 <!-- 2370 <!--
2371 id//id 2371 id//id
2372 lv//等级 2372 lv//等级
...@@ -2468,7 +2468,7 @@ ...@@ -2468,7 +2468,7 @@
2468 2468
2469 </user> 2469 </user>
2470 2470
2471 <user id="1003" name="对手1003" pk_val="2000" petstar="1,2" lv="1,2" skill="1"> 2471 <user id="1003" name="对手1003" pk_val="2000" petstar="0,0" lv="1,1" skill="1">
2472 <!-- 2472 <!--
2473 id//id 2473 id//id
2474 lv//等级 2474 lv//等级
...@@ -2617,7 +2617,7 @@ ...@@ -2617,7 +2617,7 @@
2617 2617
2618 </user> 2618 </user>
2619 2619
2620 <user id="1004" name="对手1004" pk_val="9999999" petstar="1,2" lv="1,2" skill="1"> 2620 <user id="1004" name="对手1004" pk_val="9999999" petstar="1,1" lv="1,1" skill="1">
2621 <!-- 2621 <!--
2622 id//id 2622 id//id
2623 lv//等级 2623 lv//等级
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
3 <!--m0800279afc6c--> 3 <!--m0800279afc6c-->
4 <!--m0800278b87c2--> 4 <!--m0800278b87c2-->
5 <!----> 5 <!---->
6 <Account>m0800279afcfehh</Account> 6 <Account>m0800279afc6c</Account>
7 <exp>0</exp> 7 <exp>0</exp>
8 <versionnum>201801291657</versionnum> 8 <versionnum>201801291657</versionnum>
9 <isMusic>0</isMusic> 9 <isMusic>0</isMusic>
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
13 <best>2</best> 13 <best>2</best>
14 <game_play_cnt>17</game_play_cnt> 14 <game_play_cnt>17</game_play_cnt>
15 <cake_best>157</cake_best> 15 <cake_best>157</cake_best>
16 <haidao_best>250</haidao_best> 16 <haidao_best>689</haidao_best>
17 <guess_game_play_cnt>2</guess_game_play_cnt> 17 <guess_game_play_cnt>2</guess_game_play_cnt>
18 <guess_best>18</guess_best> 18 <guess_best>18</guess_best>
19 <candy_best>38</candy_best> 19 <candy_best>38</candy_best>
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
26 <new_guide_step>4</new_guide_step> 26 <new_guide_step>4</new_guide_step>
27 <is_feiyanzoubi_game_guide>1</is_feiyanzoubi_game_guide> 27 <is_feiyanzoubi_game_guide>1</is_feiyanzoubi_game_guide>
28 <feiyanzoubi_best>376</feiyanzoubi_best> 28 <feiyanzoubi_best>376</feiyanzoubi_best>
29 <uid>1030100010142922</uid> 29 <uid>1030100010142873</uid>
30 <is_bird_game_guide>1</is_bird_game_guide> 30 <is_bird_game_guide>1</is_bird_game_guide>
31 <bird_best>1008</bird_best> 31 <bird_best>1008</bird_best>
32 <is_haidao_game_guide>1</is_haidao_game_guide> 32 <is_haidao_game_guide>1</is_haidao_game_guide>
......
1 xcopy %cd%\res D:\AndroidProject\XhxAndroid_gzdt\assets\res /E/I/Y
2 cocos luacompile -s %cd%\src -d D:\AndroidProject\XhxAndroid_gzdt\assets\src -e -k tpdrawgdanjue -b tpdrawgd
...\ No newline at end of file ...\ No newline at end of file
...@@ -43,4 +43,11 @@ ...@@ -43,4 +43,11 @@
43 <pay id="202" name="年卡(365天)" type="2" des="年卡" day="365" item="100001,2000;600002,5;200001,1" payitem="" rmb="198.0" product="dclybn198" productPuTao="qjqp202" notice="1"/> 43 <pay id="202" name="年卡(365天)" type="2" des="年卡" day="365" item="100001,2000;600002,5;200001,1" payitem="" rmb="198.0" product="dclybn198" productPuTao="qjqp202" notice="1"/>
44 <pay id="301" name="自动续包月卡(31天)" type="2" des="月卡" day="31" item="100001,1000;600001,5" payitem="" rmb="20.0" product="tjlhdcylyby020@207" productPuTao="qjqp999" notice="1"/> 44 <pay id="301" name="自动续包月卡(31天)" type="2" des="月卡" day="31" item="100001,1000;600001,5" payitem="" rmb="20.0" product="tjlhdcylyby020@207" productPuTao="qjqp999" notice="1"/>
45 </platform> 45 </platform>
46 <!--上海电信-->
47 <platform id="106" channel="shdx">
48 <pay id="201" name="月卡(31天)" type="2" des="4k动漫vip单月包" day="31" item="100001,1000;600001,5" payitem="" rmb="69.0" product="1000710508" productPuTao="qjqp201" notice="1"/>
49 <pay id="202" name="年卡(365天)" type="2" des="4k动漫vip年包" day="365" item="100001,2000;600002,5;200001,1" payitem="" rmb="299.0" product="1000710226" productPuTao="qjqp202" notice="1"/>
50 <pay id="301" name="自动续包月卡(31天)" type="2" des="4K动漫vip包" day="31" item="100001,1000;600001,5" payitem="" rmb="49.0" product="1000709506" productPuTao="qjqp999" notice="1"/>
51 </platform>
52
46 </root> 53 </root>
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -2296,7 +2296,7 @@ ...@@ -2296,7 +2296,7 @@
2296 skill中的数字表示AI宠物的技能开启和玩家的差异。“1”代表需要比玩家多1个宠物开启了技能。 2296 skill中的数字表示AI宠物的技能开启和玩家的差异。“1”代表需要比玩家多1个宠物开启了技能。
2297 --> 2297 -->
2298 2298
2299 <user id="1001" name="对手1001" pk_val="500" petstar="1,2" lv="1,2" skill="1"> 2299 <user id="1001" name="对手1001" pk_val="500" petstar="0,0" lv="0,0" skill="0">
2300 <!-- 2300 <!--
2301 id//id 2301 id//id
2302 lv//等级 2302 lv//等级
...@@ -2366,7 +2366,7 @@ ...@@ -2366,7 +2366,7 @@
2366 2366
2367 </user> 2367 </user>
2368 2368
2369 <user id="1002" name="对手1002" pk_val="1000" petstar="1,2" lv="1,2" skill="1"> 2369 <user id="1002" name="对手1002" pk_val="1000" petstar="0,0" lv="0,0" skill="1">
2370 <!-- 2370 <!--
2371 id//id 2371 id//id
2372 lv//等级 2372 lv//等级
...@@ -2468,7 +2468,7 @@ ...@@ -2468,7 +2468,7 @@
2468 2468
2469 </user> 2469 </user>
2470 2470
2471 <user id="1003" name="对手1003" pk_val="2000" petstar="1,2" lv="1,2" skill="1"> 2471 <user id="1003" name="对手1003" pk_val="2000" petstar="0,0" lv="1,1" skill="1">
2472 <!-- 2472 <!--
2473 id//id 2473 id//id
2474 lv//等级 2474 lv//等级
...@@ -2617,7 +2617,7 @@ ...@@ -2617,7 +2617,7 @@
2617 2617
2618 </user> 2618 </user>
2619 2619
2620 <user id="1004" name="对手1004" pk_val="9999999" petstar="1,2" lv="1,2" skill="1"> 2620 <user id="1004" name="对手1004" pk_val="9999999" petstar="1,1" lv="1,1" skill="1">
2621 <!-- 2621 <!--
2622 id//id 2622 id//id
2623 lv//等级 2623 lv//等级
......
...@@ -920,7 +920,7 @@ function UserModel.getLeftVipDay() ...@@ -920,7 +920,7 @@ function UserModel.getLeftVipDay()
920 end 920 end
921 end 921 end
922 922
923 if NEED_PAY==0 then --大唐版本所有的用户都是VIP 923 if CHANNEL=="gzdt" then --大唐版本所有的用户都是VIP
924 left_day_num=100; 924 left_day_num=100;
925 end 925 end
926 926
......
...@@ -166,9 +166,14 @@ function GameStartView:onStart() ...@@ -166,9 +166,14 @@ function GameStartView:onStart()
166 if my_diamond_num >= game_info.diamond then 166 if my_diamond_num >= game_info.diamond then
167 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun); 167 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun);
168 else 168 else
169 if CHANNEL=="shdx" then
170 local reciever = require("app.views.view.XyxPayView_shdx"):show(game_info.id,paySuccessFun);
171 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
172 else
169 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun); 173 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun);
170 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever); 174 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
171 end 175 end
176 end
172 return; 177 return;
173 else 178 else
174 paySuccessFun(); 179 paySuccessFun();
......
...@@ -120,9 +120,14 @@ function GameStartView:onStart() ...@@ -120,9 +120,14 @@ function GameStartView:onStart()
120 if my_diamond_num >= game_info.diamond then 120 if my_diamond_num >= game_info.diamond then
121 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun); 121 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun);
122 else 122 else
123 if CHANNEL=="shdx" then
124 local reciever = require("app.views.view.XyxPayView_tianjin_cucc"):show(game_info.id,paySuccessFun);
125 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
126 else
123 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun); 127 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun);
124 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever); 128 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
125 end 129 end
130 end
126 return; 131 return;
127 else 132 else
128 paySuccessFun(); 133 paySuccessFun();
......
...@@ -120,9 +120,14 @@ function GameStartView:onStart() ...@@ -120,9 +120,14 @@ function GameStartView:onStart()
120 if my_diamond_num >= game_info.diamond then 120 if my_diamond_num >= game_info.diamond then
121 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun); 121 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun);
122 else 122 else
123 if CHANNEL=="shdx" then
124 local reciever = require("app.views.view.XyxPayView_tianjin_cucc"):show(game_info.id,paySuccessFun);
125 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
126 else
123 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun); 127 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun);
124 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever); 128 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
125 end 129 end
130 end
126 return; 131 return;
127 else 132 else
128 paySuccessFun(); 133 paySuccessFun();
......
...@@ -156,9 +156,14 @@ function GameStartView:onStart() ...@@ -156,9 +156,14 @@ function GameStartView:onStart()
156 if my_diamond_num >= game_info.diamond then 156 if my_diamond_num >= game_info.diamond then
157 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun); 157 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun);
158 else 158 else
159 if CHANNEL=="shdx" then
160 local reciever = require("app.views.view.XyxPayView_tianjin_cucc"):show(game_info.id,paySuccessFun);
161 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
162 else
159 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun); 163 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun);
160 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever); 164 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
161 end 165 end
166 end
162 return; 167 return;
163 else 168 else
164 paySuccessFun(); 169 paySuccessFun();
......
...@@ -126,9 +126,14 @@ function GameStartView:onStart() ...@@ -126,9 +126,14 @@ function GameStartView:onStart()
126 if my_diamond_num >= game_info.diamond then 126 if my_diamond_num >= game_info.diamond then
127 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun); 127 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun);
128 else 128 else
129 if CHANNEL=="shdx" then
130 local reciever = require("app.views.view.XyxPayView_tianjin_cucc"):show(game_info.id,paySuccessFun);
131 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
132 else
129 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun); 133 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun);
130 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever); 134 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
131 end 135 end
136 end
132 return; 137 return;
133 else 138 else
134 paySuccessFun(); 139 paySuccessFun();
......
...@@ -114,9 +114,14 @@ function GameStartView:onStart() ...@@ -114,9 +114,14 @@ function GameStartView:onStart()
114 if my_diamond_num >= game_info.diamond then 114 if my_diamond_num >= game_info.diamond then
115 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun); 115 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun);
116 else 116 else
117 if CHANNEL=="shdx" then
118 local reciever = require("app.views.view.XyxPayView_tianjin_cucc"):show(game_info.id,paySuccessFun);
119 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
120 else
117 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun); 121 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun);
118 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever); 122 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
119 end 123 end
124 end
120 return; 125 return;
121 else 126 else
122 paySuccessFun(); 127 paySuccessFun();
......
...@@ -114,9 +114,14 @@ function GameStartView:onStart() ...@@ -114,9 +114,14 @@ function GameStartView:onStart()
114 if my_diamond_num >= game_info.diamond then 114 if my_diamond_num >= game_info.diamond then
115 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun); 115 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun);
116 else 116 else
117 if CHANNEL=="shdx" then
118 local reciever = require("app.views.view.XyxPayView_tianjin_cucc"):show(game_info.id,paySuccessFun);
119 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
120 else
117 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun); 121 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun);
118 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever); 122 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
119 end 123 end
124 end
120 return; 125 return;
121 else 126 else
122 paySuccessFun(); 127 paySuccessFun();
......
...@@ -166,9 +166,14 @@ function GameStartView:onStart() ...@@ -166,9 +166,14 @@ function GameStartView:onStart()
166 if my_diamond_num >= game_info.diamond then 166 if my_diamond_num >= game_info.diamond then
167 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun); 167 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun);
168 else 168 else
169 if CHANNEL=="shdx" then
170 local reciever = require("app.views.view.XyxPayView_tianjin_cucc"):show(game_info.id,paySuccessFun);
171 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
172 else
169 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun); 173 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun);
170 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever); 174 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
171 end 175 end
176 end
172 return; 177 return;
173 else 178 else
174 paySuccessFun(); 179 paySuccessFun();
......
...@@ -167,9 +167,14 @@ function GameStartView:onStart() ...@@ -167,9 +167,14 @@ function GameStartView:onStart()
167 if my_diamond_num >= game_info.diamond then 167 if my_diamond_num >= game_info.diamond then
168 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun); 168 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun);
169 else 169 else
170 if CHANNEL=="shdx" then
171 local reciever = require("app.views.view.XyxPayView_tianjin_cucc"):show(game_info.id,paySuccessFun);
172 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
173 else
170 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun); 174 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun);
171 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever); 175 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
172 end 176 end
177 end
173 return; 178 return;
174 else 179 else
175 paySuccessFun(); 180 paySuccessFun();
......
...@@ -139,9 +139,14 @@ function GameStartView:onStart() ...@@ -139,9 +139,14 @@ function GameStartView:onStart()
139 if my_diamond_num >= game_info.diamond then 139 if my_diamond_num >= game_info.diamond then
140 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun); 140 Alert.showTwo("玩这游戏需要扣除"..game_info.diamond.."个钻石,是否继续?",paySuccessFun);
141 else 141 else
142 if CHANNEL=="shdx" then
143 local reciever = require("app.views.view.XyxPayView_tianjin_cucc"):show(game_info.id,paySuccessFun);
144 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
145 else
142 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun); 146 local reciever = require("app.views.view.XyxPayView"):show(game_info.id,paySuccessFun);
143 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever); 147 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(reciever);
144 end 148 end
149 end
145 return; 150 return;
146 else 151 else
147 paySuccessFun(); 152 paySuccessFun();
......
...@@ -108,7 +108,7 @@ function AchievementView:updateItems() ...@@ -108,7 +108,7 @@ function AchievementView:updateItems()
108 local list_nodes = { }; 108 local list_nodes = { };
109 local _list = AchievementInfo.getAchievementList(); 109 local _list = AchievementInfo.getAchievementList();
110 110
111 if NEED_PAY==0 then --支付模式去掉钻石积累 111 if CHANNEL=="gzdt" then --支付模式去掉钻石积累
112 for i =1,#_list do 112 for i =1,#_list do
113 if _list[i] and _list[i].viewid==5 then 113 if _list[i] and _list[i].viewid==5 then
114 table.remove(_list,i); 114 table.remove(_list,i);
...@@ -122,6 +122,14 @@ function AchievementView:updateItems() ...@@ -122,6 +122,14 @@ function AchievementView:updateItems()
122 end 122 end
123 end 123 end
124 124
125 if CHANNEL=="shdx" then --上海电信没有大富豪
126 for i =1,#_list do
127 if _list[i] and _list[i].viewid==5 then
128 table.remove(_list,i);
129 end
130 end
131 end
132
125 local _y = #_list * 260; 133 local _y = #_list * 260;
126 if _y < 500 then 134 if _y < 500 then
127 _y = 500; 135 _y = 500;
...@@ -323,7 +331,7 @@ function AchievementView:setScrollPosition(node) ...@@ -323,7 +331,7 @@ function AchievementView:setScrollPosition(node)
323 331
324 local _list = AchievementInfo.getAchievementList(); 332 local _list = AchievementInfo.getAchievementList();
325 333
326 if NEED_PAY==0 then --支付模式去掉钻石积累 334 if CHANNEL=="gzdt" then --支付模式去掉钻石积累
327 for i =1,#_list do 335 for i =1,#_list do
328 if _list[i] and _list[i].viewid==5 then 336 if _list[i] and _list[i].viewid==5 then
329 table.remove(_list,i); 337 table.remove(_list,i);
...@@ -337,6 +345,14 @@ function AchievementView:setScrollPosition(node) ...@@ -337,6 +345,14 @@ function AchievementView:setScrollPosition(node)
337 end 345 end
338 end 346 end
339 347
348 if CHANNEL=="shdx" then --上海电信没有大富豪
349 for i =1,#_list do
350 if _list[i] and _list[i].viewid==5 then
351 table.remove(_list,i);
352 end
353 end
354 end
355
340 local len = #_list * 260; 356 local len = #_list * 260;
341 local currentX = len -(node:getPositionY()+260+20); 357 local currentX = len -(node:getPositionY()+260+20);
342 358
......
...@@ -115,7 +115,7 @@ function ActivityView:initActivity() ...@@ -115,7 +115,7 @@ function ActivityView:initActivity()
115 end 115 end
116 end 116 end
117 elseif v.act == "ActivityVipView" then 117 elseif v.act == "ActivityVipView" then
118 if NEED_PAY==0 or #vipList<=0 then --0支付模式不能访问活动礼包 118 if CHANNEL=="gzdt" or #vipList<=0 then --0支付模式不能访问活动礼包
119 --活动礼包先判断有没有数据 119 --活动礼包先判断有没有数据
120 else 120 else
121 act_tab_list[#act_tab_list+1] = v; 121 act_tab_list[#act_tab_list+1] = v;
......
...@@ -64,7 +64,7 @@ function LoginView:init() ...@@ -64,7 +64,7 @@ function LoginView:init()
64 local isUseWxLogin = true; 64 local isUseWxLogin = true;
65 local targetPlatform = cc.Application:getInstance():getTargetPlatform(); 65 local targetPlatform = cc.Application:getInstance():getTargetPlatform();
66 --检测到cucc渠道、电脑平台时自动点击游客登录模式 66 --检测到cucc渠道、电脑平台时自动点击游客登录模式
67 if not isUseWxLogin or CHANNEL == "cucc" or CHANNEL == "shdx" or targetPlatform == cc.PLATFORM_OS_WINDOWS or targetPlatform == cc.PLATFORM_OS_MAC then 67 if not isUseWxLogin or CHANNEL == "cucc" or CHANNEL == "shdx" or CHANNEL == "gzdt" or targetPlatform == cc.PLATFORM_OS_WINDOWS or targetPlatform == cc.PLATFORM_OS_MAC then
68 self:doLogin(self.userID); 68 self:doLogin(self.userID);
69 else 69 else
70 if self.openid == "" or self.access_token == "" or self.refresh_token == "" then 70 if self.openid == "" or self.access_token == "" or self.refresh_token == "" then
...@@ -93,7 +93,7 @@ function LoginView:showLoginView() ...@@ -93,7 +93,7 @@ function LoginView:showLoginView()
93 93
94 self.txt_account = self:getChildByName("panel"):getChildByName("txt_account"); 94 self.txt_account = self:getChildByName("panel"):getChildByName("txt_account");
95 95
96 if GameConfig.is_open_wx_login and NEED_PAY~=0 then --刨掉大唐 96 if GameConfig.is_open_wx_login and CHANNEL~="gzdt" then --刨掉大唐
97 if DEBUG == 0 then 97 if DEBUG == 0 then
98 self.btn_new:setVisible(false); 98 self.btn_new:setVisible(false);
99 self.txt_account:setVisible(false); 99 self.txt_account:setVisible(false);
......
...@@ -90,6 +90,10 @@ function PetTeamListView:update() ...@@ -90,6 +90,10 @@ function PetTeamListView:update()
90 btn_vip = item:getChildByName("btn_vip"); 90 btn_vip = item:getChildByName("btn_vip");
91 end 91 end
92 item:setPosition(cc.p(15,_y - i*160-10)); 92 item:setPosition(cc.p(15,_y - i*160-10));
93 if CHANNEL=="shdx" then
94 btn_vip:getChildByName("txt"):setString("开通会员");
95 btn_vip:getChildByName("selected"):getChildByName("txt"):setString("开通会员");
96 end
93 97
94 local data = self.list[i]; 98 local data = self.list[i];
95 if data then 99 if data then
......
...@@ -85,7 +85,7 @@ function RoleBussinessView:init(_nodes, _update_nodes_func, _update_nodes_state_ ...@@ -85,7 +85,7 @@ function RoleBussinessView:init(_nodes, _update_nodes_func, _update_nodes_state_
85 end 85 end
86 -- logUI(shanchang_game.."---<RoleBussinessView --shanchanggame--------->"..ruoxiang_game); 86 -- logUI(shanchang_game.."---<RoleBussinessView --shanchanggame--------->"..ruoxiang_game);
87 self.btn_wx = self:getChildByName("btn_wx"); 87 self.btn_wx = self:getChildByName("btn_wx");
88 if GameConfig.is_open_wx_login and UserModel.login_type == 0 and NEED_PAY==1 and CHANNEL~="shdx" then 88 if GameConfig.is_open_wx_login and UserModel.login_type == 0 and CHANNEL~="gzdt" and CHANNEL~="shdx" then
89 self.btn_wx.fn = function() 89 self.btn_wx.fn = function()
90 self:onWxClick(self.btn_wx); 90 self:onWxClick(self.btn_wx);
91 end; 91 end;
...@@ -213,36 +213,15 @@ function RoleBussinessView:update() ...@@ -213,36 +213,15 @@ function RoleBussinessView:update()
213 self:getChildByName("panel_novip"):setVisible(false); 213 self:getChildByName("panel_novip"):setVisible(false);
214 214
215 local vipList = ShopInfo.getVipList(); 215 local vipList = ShopInfo.getVipList();
216 if #vipList>0 then
216 local data1 = UserModel.getVipByID(vipList[1].id); 217 local data1 = UserModel.getVipByID(vipList[1].id);
217 local data2 = UserModel.getVipByID(vipList[2].id); 218 local data2 = UserModel.getVipByID(vipList[2].id);
218 local end_time = math.max(data1.val2, data2.val2); 219 local end_time = math.max(data1.val2, data2.val2);
219 local time_date = os.date("*t", end_time); 220 local time_date = os.date("*t", end_time);
220 self:getChildByName("txt_expire"):setVisible(true); 221 self:getChildByName("txt_expire"):setVisible(true);
221 self:getChildByName("txt_expire"):setString("VIP到期时间:" .. time_date.year .. "年" .. time_date.month .. "月" .. time_date.day .. "日"); 222 self:getChildByName("txt_expire"):setString("VIP到期时间:" .. time_date.year .. "年" .. time_date.month .. "月" .. time_date.day .. "日");
222 -- if ((data1 and (data1.val1 == 0 or not TimeUtil.isToday(UserModel.time_second,data1.val1))) or (data2 and (data2.val1 == 0 or not TimeUtil.isToday(UserModel.time_second,data2.val1)))) then 223 end
223 -- self.btn_get:setVisible(true);
224 -- self:getChildByName("panel_vip"):getChildByName("yilingqu"):setVisible(false);
225 224
226 -- local _nodes = {};
227 -- _nodes[#_nodes+1] = self.btn_get;
228 -- self.btn_get.id = vipList[1].id;
229 -- self.nodes = TableUtil.merge(self.nodes_copy,{_nodes});
230 -- if self.update_nodes_func then
231 -- self.update_nodes_func(self.nodes);
232 -- end
233 -- if self.update_nodes_state_func then
234 -- self.update_nodes_state_func(self.btn_get);
235 -- end
236 -- else
237 -- self.btn_get:setVisible(false);
238 -- self:getChildByName("panel_vip"):getChildByName("yilingqu"):setVisible(true);
239 -- if self.update_nodes_func then
240 -- self.update_nodes_func(self.nodes_copy);
241 -- end
242 -- if self.update_nodes_state_func then
243 -- self.update_nodes_state_func(nil);
244 -- end
245 -- end
246 self.nodes = TableUtil.copyTab(self.nodes_copy); 225 self.nodes = TableUtil.copyTab(self.nodes_copy);
247 else 226 else
248 227
...@@ -274,7 +253,7 @@ function RoleBussinessView:update() ...@@ -274,7 +253,7 @@ function RoleBussinessView:update()
274 self.nodes = TableUtil.merge(self.nodes_copy, { _nodes }); 253 self.nodes = TableUtil.merge(self.nodes_copy, { _nodes });
275 end 254 end
276 255
277 if NEED_PAY==0 then 256 if CHANNEL=="gzdt" then
278 self:getChildByName("txt_expire"):setVisible(false); 257 self:getChildByName("txt_expire"):setVisible(false);
279 end 258 end
280 259
......
...@@ -40,7 +40,7 @@ function RoleMainView:init() ...@@ -40,7 +40,7 @@ function RoleMainView:init()
40 self.nodes[2] = { }; 40 self.nodes[2] = { };
41 for i = 1, 5 do 41 for i = 1, 5 do
42 local tab = self:getChildByName("tab_" .. i); 42 local tab = self:getChildByName("tab_" .. i);
43 if NEED_PAY==0 and i==5 then 43 if CHANNEL=="gzdt" and i==5 then
44 tab:setVisible(false); 44 tab:setVisible(false);
45 else 45 else
46 tab:setZOrder(100); 46 tab:setZOrder(100);
......
...@@ -40,7 +40,10 @@ function RoleTequanView:update() ...@@ -40,7 +40,10 @@ function RoleTequanView:update()
40 item.id =(i + 1); 40 item.id =(i + 1);
41 item.index = i + 1; 41 item.index = i + 1;
42 local icon_url = "res/ui/dress/img_tequan_" .. item.id .. ".png"; 42 local icon_url = "res/ui/dress/img_tequan_" .. item.id .. ".png";
43 if cc.FileUtils:getInstance():isFileExist(icon_url) then 43 local icon_url_shdx="res/ui/dress/img_tequan_" .. item.id .. "_shdx.png";
44 if CHANNEL=="shdx" and cc.FileUtils:getInstance():isFileExist(icon_url_shdx) then
45 item:getChildByName("img"):setSpriteFrame(cc.Sprite:create(icon_url_shdx):getSpriteFrame());
46 elseif cc.FileUtils:getInstance():isFileExist(icon_url) then
44 item:getChildByName("img"):setSpriteFrame(cc.Sprite:create(icon_url):getSpriteFrame()); 47 item:getChildByName("img"):setSpriteFrame(cc.Sprite:create(icon_url):getSpriteFrame());
45 end 48 end
46 btn:addTouchEventListener( function(ref, type) self:onButtonClick(ref, type, handler(self, self.onItemClick)) end); 49 btn:addTouchEventListener( function(ref, type) self:onButtonClick(ref, type, handler(self, self.onItemClick)) end);
......
...@@ -152,7 +152,7 @@ function ShopExchangeView:onOkFn(ref) ...@@ -152,7 +152,7 @@ function ShopExchangeView:onOkFn(ref)
152 else 152 else
153 --Alert.showTwo(strings.msg_1003,okFun); 153 --Alert.showTwo(strings.msg_1003,okFun);
154 154
155 if NEED_PAY==0 then 155 if CHANNEL=="gzdt" then
156 function okFun() end; 156 function okFun() end;
157 Alert.showTwo(strings.msg_1034,okFun); 157 Alert.showTwo(strings.msg_1034,okFun);
158 else 158 else
......
...@@ -70,7 +70,7 @@ function ShopView:init() ...@@ -70,7 +70,7 @@ function ShopView:init()
70 local tab = self.panel:getChildByName("tab_"..i); 70 local tab = self.panel:getChildByName("tab_"..i);
71 71
72 --判断是否支持支付模式 72 --判断是否支持支付模式
73 if (NEED_PAY==0 and i==5) or (NEED_PAY==0 and i==6)or (CHANNEL=="shdx" and i==5) or (CHANNEL=="shdx" and i==6) then --隐藏金豆、钻石 73 if (CHANNEL=="gzdt" and i==5) or (CHANNEL=="gzdt" and i==6)or (CHANNEL=="shdx" and i==5) or (CHANNEL=="shdx" and i==6) then --隐藏金豆、钻石
74 tab:setVisible(false); 74 tab:setVisible(false);
75 else 75 else
76 tab:setTag(i); 76 tab:setTag(i);
...@@ -95,7 +95,7 @@ function ShopView:init() ...@@ -95,7 +95,7 @@ function ShopView:init()
95 95
96 self.nodesCopy = TableUtil.copyTab(self.nodes); 96 self.nodesCopy = TableUtil.copyTab(self.nodes);
97 97
98 if NEED_PAY==0 then 98 if CHANNEL=="gzdt" or CHANNEL=="shdx" then
99 self.panel:getChildByName("img_diamond"):setVisible(false); 99 self.panel:getChildByName("img_diamond"):setVisible(false);
100 end 100 end
101 101
...@@ -284,7 +284,7 @@ function ShopView:update() ...@@ -284,7 +284,7 @@ function ShopView:update()
284 btn:show(); 284 btn:show();
285 _nodes[1][#_nodes[1]+1] = btn; 285 _nodes[1][#_nodes[1]+1] = btn;
286 end 286 end
287 if itemInfo.vip == 1 then 287 if itemInfo.vip == 1 and CHANNEL~="gzdt" then
288 shopItem:getChildByName("flag_vip"):setVisible(true); 288 shopItem:getChildByName("flag_vip"):setVisible(true);
289 else 289 else
290 shopItem:getChildByName("flag_vip"):setVisible(false); 290 shopItem:getChildByName("flag_vip"):setVisible(false);
...@@ -359,7 +359,7 @@ function ShopView:onBuyClick(ref,event) ...@@ -359,7 +359,7 @@ function ShopView:onBuyClick(ref,event)
359 if shopItemInfo.costList[1].id == 100000 then 359 if shopItemInfo.costList[1].id == 100000 then
360 Alert.showTwo(strings.msg_1032,okFun); 360 Alert.showTwo(strings.msg_1032,okFun);
361 else 361 else
362 if NEED_PAY==0 or CHANNEL=="shdx" then 362 if CHANNEL=="gzdt" or CHANNEL=="shdx" then
363 function okFun() end; 363 function okFun() end;
364 Alert.showTwo(strings.msg_1034,okFun); 364 Alert.showTwo(strings.msg_1034,okFun);
365 else 365 else
...@@ -386,7 +386,7 @@ function ShopView:onBuyCallBack(params) ...@@ -386,7 +386,7 @@ function ShopView:onBuyCallBack(params)
386 if shopItemInfo.costList[1].id == 100000 then 386 if shopItemInfo.costList[1].id == 100000 then
387 Alert.showTwo(strings.msg_1032,okFun); 387 Alert.showTwo(strings.msg_1032,okFun);
388 else 388 else
389 if NEED_PAY==0 then 389 if CHANNEL=="gzdt" then
390 function okFun() end; 390 function okFun() end;
391 Alert.showTwo(strings.msg_1034,okFun); 391 Alert.showTwo(strings.msg_1034,okFun);
392 else 392 else
......
...@@ -36,7 +36,12 @@ function SignView:init() ...@@ -36,7 +36,12 @@ function SignView:init()
36 if left_vip_day > 0 then 36 if left_vip_day > 0 then
37 local sign_reward_str = SignInfo.getSignInfo().vipreward; 37 local sign_reward_str = SignInfo.getSignInfo().vipreward;
38 local sign_reward_arr = StringUtil.split(sign_reward_str,","); 38 local sign_reward_arr = StringUtil.split(sign_reward_str,",");
39 if CHANNEL=="shdx" then
40 self:getChildByName("panel"):getChildByName("txt_vip"):setString("会员经验+"..sign_reward_arr[2]);
41 else
39 self:getChildByName("panel"):getChildByName("txt_vip"):setString("VIP经验+"..sign_reward_arr[2]); 42 self:getChildByName("panel"):getChildByName("txt_vip"):setString("VIP经验+"..sign_reward_arr[2]);
43 end
44
40 --self:getChildByName("panel"):getChildByName("pic_vip"):setVisible(true); 45 --self:getChildByName("panel"):getChildByName("pic_vip"):setVisible(true);
41 else 46 else
42 local sign_reward_str = SignInfo.getSignInfo().reward; 47 local sign_reward_str = SignInfo.getSignInfo().reward;
......
...@@ -49,7 +49,7 @@ function TaskView:update() ...@@ -49,7 +49,7 @@ function TaskView:update()
49 49
50 self.list = UserModel.getTaskList(); 50 self.list = UserModel.getTaskList();
51 51
52 if NEED_PAY==0 then --支付模式去除钻石任务 52 if CHANNEL=="gzdt" or CHANNEL=="shdx" then --支付模式去除钻石任务
53 for i=0,#self.list-1 do 53 for i=0,#self.list-1 do
54 if self.list[i + 1] and self.list[i + 1].id==10 then 54 if self.list[i + 1] and self.list[i + 1].id==10 then
55 table.remove(self.list,i+1); 55 table.remove(self.list,i+1);
......
...@@ -71,7 +71,12 @@ function XyxGameOver:onGameEndCallBackFun(params) ...@@ -71,7 +71,12 @@ function XyxGameOver:onGameEndCallBackFun(params)
71 if left_vip_day > 0 then 71 if left_vip_day > 0 then
72 local vip_exp = UserModel.getItemNum(100002); 72 local vip_exp = UserModel.getItemNum(100002);
73 local level_info = VipLevelInfo.getInfoByScore(vip_exp); 73 local level_info = VipLevelInfo.getInfoByScore(vip_exp);
74 if CHANNEL=="shdx" then
75 item:getChildByName("vip"):getChildByName("txt_1"):setString("会员");
76 else
74 item:getChildByName("vip"):getChildByName("txt_1"):setString("VIP"..level_info.level); 77 item:getChildByName("vip"):getChildByName("txt_1"):setString("VIP"..level_info.level);
78 end
79
75 print("vip 金豆加成:",level_info.add_item) 80 print("vip 金豆加成:",level_info.add_item)
76 item:getChildByName("vip"):getChildByName("txt_2"):setString("+"..((level_info.add_item-1)*100).."%"); 81 item:getChildByName("vip"):getChildByName("txt_2"):setString("+"..((level_info.add_item-1)*100).."%");
77 else 82 else
......
...@@ -51,8 +51,13 @@ function XyxPayView:init() ...@@ -51,8 +51,13 @@ function XyxPayView:init()
51 51
52 local game_info = SingleGameInfo.get_game_info(self.game_id); 52 local game_info = SingleGameInfo.get_game_info(self.game_id);
53 self.panel:getChildByName("txt_name"):setString(game_info.name); 53 self.panel:getChildByName("txt_name"):setString(game_info.name);
54 local icon_url = "res/ui/xyx/img_xyx_"..self.game_id..".png"; 54 local bg_icon_url = "res/ui/xyx/bg_xyx_"..self.game_id..".png";
55 print("sssssssss",icon_url) 55 print("sssssssss",bg_icon_url)
56 if cc.FileUtils:getInstance():isFileExist(bg_icon_url) then
57 self.panel:getChildByName("bg_img"):setSpriteFrame(cc.Sprite:create(bg_icon_url):getSpriteFrame());
58 end
59
60 local icon_url = "res/ui/xyx/xyx_"..self.game_id..".png";
56 if cc.FileUtils:getInstance():isFileExist(icon_url) then 61 if cc.FileUtils:getInstance():isFileExist(icon_url) then
57 self.panel:getChildByName("img"):setSpriteFrame(cc.Sprite:create(icon_url):getSpriteFrame()); 62 self.panel:getChildByName("img"):setSpriteFrame(cc.Sprite:create(icon_url):getSpriteFrame());
58 end 63 end
......
1 local XyxPayView = dialog.uinode("ui/xyx/shanghai_ctcc/XyxPayLayer.csb",import(".BaseViewNew"))
2 local _index = 1;
3
4 function XyxPayView:ctor()
5 XyxPayView.super.ctor(self);
6 end
7
8 function XyxPayView:show(game_id,onPaySuccessFun)
9 self.game_id = game_id;
10 self.onPaySuccess = onPaySuccessFun;
11
12 local scene = cc.Director:getInstance():getRunningScene()
13 local inst = XyxPayView:create();
14 scene:addChild(inst, dialog.ZORDER_POP);
15
16 inst:setContentSize(cc.size(display.width,display.height));
17 ccui.Helper:doLayout(inst);
18
19 inst.scrollView = inst:getChildByName("ScrollView");
20
21 inst.layer = cc.Layer:create();
22 inst:addChild(inst.layer,1);
23 --registerScriptTouchEvent(inst.layer,handler(inst,inst.onTouchBegin),handler(inst,inst.onTouchMove),handler(inst,inst.onTouchEnd));
24
25 inst:init();
26
27 return inst;
28 end
29
30 function XyxPayView:init()
31 cc.Director:getInstance():setAnimationInterval(1/30);
32
33 self.panel = self:getChildByName("panel");
34
35 self.btn_close = self.panel:getChildByName("btn_close");
36 self.btn_close.fn = handler(self,self.onClose);
37 self.btn_close:addTouchEventListener(function(ref,type) self:onButtonClick(ref,type,self.btn_close.fn)end);
38
39 self.btn_buy = self.panel:getChildByName("btn_buy");
40 self.btn_buy.fn = handler(self,self.onBuyClick);
41 self.btn_buy:addTouchEventListener(function(ref,type) self:onButtonClick(ref,type,self.btn_buy.fn)end);
42
43 self.btn_vip_month = self.panel:getChildByName("btn_vip_month");
44 self.btn_vip_month.fn = handler(self,self.onMonthVipClick);
45 self.btn_vip_month:addTouchEventListener(function(ref,type) self:onButtonClick(ref,type,self.btn_vip_month.fn)end);
46
47 self.btn_vip_year = self.panel:getChildByName("btn_vip_year");
48 self.btn_vip_year.fn = handler(self,self.onYearVipClick);
49 self.btn_vip_year:addTouchEventListener(function(ref,type) self:onButtonClick(ref,type,self.btn_vip_year.fn)end);
50
51 local game_info = SingleGameInfo.get_game_info(self.game_id);
52 --self.panel:getChildByName("txt_name"):setString(game_info.name);
53 --local icon_url = "res/ui/xyx/xyx_"..self.game_id..".png";
54 print("sssssssss",icon_url)
55 --if cc.FileUtils:getInstance():isFileExist(icon_url) then
56 -- self.panel:getChildByName("img"):setSpriteFrame(cc.Sprite:create(icon_url):getSpriteFrame());
57 --end
58
59 local vipList = ShopInfo.getVipList();
60 --self.panel:getChildByName("txt_month"):setString(vipList[1].rmb.."元");
61 --self.panel:getChildByName("txt_year"):setString(vipList[2].rmb.."元");
62
63 local game_info = SingleGameInfo.get_game_info(self.game_id);
64 -- local shopInfo = ShopInfo.getPayInfo(game_info.payid);
65 --self.panel:getChildByName("txt_price"):setString(game_info.diamond.."钻石");
66
67 --self.nodes[#self.nodes+1] = {self.btn_close};
68 self.nodes[#self.nodes+1] = {self.btn_buy,self.btn_close,self.btn_vip_month,self.btn_vip_year};
69
70 self:updateSelectedState(self.btn_buy);
71
72 EventListener.addEventListener(self,EnumEvent.UPDATE_DIAMOND,handler(self,self.onDiamondUpdate));
73 end
74
75 function XyxPayView:onDiamondUpdate(params)
76 if UserModel.getDiamond() > 0 then
77 if self.shop_reciever then
78 self.shop_reciever:close();
79 self.shop_reciever = nil;
80 end
81 self:runAction(cc.Sequence:create(cc.DelayTime:create(0.3),cc.CallFunc:create(function ()
82 self:close();
83 if self.onPaySuccess then
84 self.onPaySuccess();
85 end
86 end)));
87 end
88 end
89
90 function XyxPayView:onTouchBegin(event)
91 self.begin_touch_pos = self.layer:getParent():convertToWorldSpace(event:getLocation());
92 self.isMoved = false;
93 return true;
94 end
95
96 function XyxPayView:onTouchMove(event)
97 local move_touch_pos = self.layer:getParent():convertToWorldSpace(event:getLocation());
98 local _distance = Point.distance(self.begin_touch_pos,move_touch_pos);
99 if _distance > 5 then
100 self.isMoved = true;
101 end
102 end
103
104 function XyxPayView:onTouchEnd(event)
105 local p = self.layer:convertToWorldSpace(event:getLocation());
106 end
107
108 function XyxPayView:onMonthVipClick(ref,event)
109 local vipList = ShopInfo.getVipList();
110 local shopInfo = ShopInfo.getPayInfo(vipList[1].id);
111 ShopModel.pay(shopInfo.product,shopInfo.name,shopInfo.costList[1].num,handler(self,self.onPayCallBack));
112 end
113
114 function XyxPayView:onYearVipClick(ref,event)
115 local vipList = ShopInfo.getVipList();
116 local shopInfo = ShopInfo.getPayInfo(vipList[2].id);
117 ShopModel.pay(shopInfo.product,shopInfo.name,shopInfo.costList[1].num,handler(self,self.onPayCallBack));
118 end
119
120 function XyxPayView:onBuyClick(ref,event)
121 -- local game_info = SingleGameInfo.get_game_info(self.game_id);
122 -- local shopInfo = ShopInfo.getPayInfo(game_info.payid);
123 -- ShopModel.pay(shopInfo.product,"购买"..game_info.name,shopInfo.costList[1].num,handler(self,self.onPayCallBack),nil,self.game_id);
124
125 --self.shop_reciever = require("app.views.view.ShopView"):show(6);
126 --self.shop_reciever:setLocalZOrder(dialog.ZORDER_POP);
127 --cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(self.shop_reciever);
128 --[[self.shop_reciever = require("app.views.view.ActivityView"):show("ActivityVipView");
129 self.shop_reciever:setLocalZOrder(dialog.ZORDER_POP);
130 cc.Director:getInstance():getRunningScene().keypadManager:addKeypadReceiver(self.shop_reciever);--]]
131
132 local vipList = ShopInfo.getVipList();
133 local shopInfo = ShopInfo.getPayInfo(vipList[3].id);
134 -- 包月卡的id,获取包月卡的item信息
135 -- 天津联通支付,支持连续包月
136 local function authCallbackLua(result)
137 -- if nil~=result then
138 logUI("ActivityVipView:onGetContinueClick------------------>" .. result);
139 ShopModel.pay(result, shopInfo.name, shopInfo.costList[1].num);
140 -- end
141 end
142 local vipList = ShopInfo.getVipList();
143 DeviceUtil.authPermissionForPruductId(vipList[3].product .. ",2", authCallbackLua);
144
145 -- self:onPayCallBack("success");
146 end
147
148 function XyxPayView:onPayCallBack(params)
149 if params == "success" then
150 if not TableUtil.IsInTable(UserModel.free_game_id,self.game_id) then
151 table.insert(UserModel.free_game_id,self.game_id);
152 end
153
154 LoadingManager.showDataLoading();
155
156 self:runAction(cc.Sequence:create(cc.DelayTime:create(1),cc.CallFunc:create(function ()
157 self:close();
158 LoadingManager.removeDataLoading();
159 if self.onPaySuccess then
160 self.onPaySuccess();
161 end
162 end)));
163 end
164 logUI("小游戏支付返回:"..params);
165 end
166
167 function XyxPayView:onClose()
168 self:close();
169 end
170
171 --返回键处理函数
172 function XyxPayView:onKeypadBack()
173 self:close();
174 end
175
176 --确认键处理函数
177 function XyxPayView:onKeypadOk()
178 if self.selected_node and self.selected_node.fn then
179 self.selected_node.fn();
180 end
181 end
182
183 --上键处理函数
184 function XyxPayView:onKeypadUp()
185 XyxPayView.super.onKeypadUp(self,false,true,false,false);
186 end
187
188 --下键处理函数
189 function XyxPayView:onKeypadDown()
190 XyxPayView.super.onKeypadDown(self,false,true,false,false);
191 end
192
193 --左键处理函数
194 function XyxPayView:onKeypadLeft()
195 XyxPayView.super.onKeypadLeft(self,false,true,false,true,false);
196 end
197
198 --右键处理函数
199 function XyxPayView:onKeypadRight()
200 XyxPayView.super.onKeypadRight(self,false,true,false,true,false);
201 end
202
203 function XyxPayView:updateSelectedState(near_node, isBounce, is_show_highlight)
204 --logD("near_node--------------------->"..near_node.tag);
205 for i, v in ipairs(self.nodes) do
206 for index, node in ipairs(v) do
207 node:setScale(0.50);
208 end
209 end
210
211 if near_node:getName()=="btn_buy" or near_node:getName()=="btn_vip_month" or near_node:getName()=="btn_vip_year" then
212 near_node:setScale(0.65); --选中放大
213 end
214
215 XyxPayView.super.updateSelectedState(self, near_node, isBounce, is_show_highlight);
216 end
217
218 return XyxPayView
...\ No newline at end of file ...\ No newline at end of file
...@@ -107,7 +107,7 @@ function XyxView:updateItems() ...@@ -107,7 +107,7 @@ function XyxView:updateItems()
107 item:getChildByName("panel"):getChildByName("flag"):setVisible(false); 107 item:getChildByName("panel"):getChildByName("flag"):setVisible(false);
108 end 108 end
109 109
110 if NEED_PAY==0 then 110 if CHANNEL=="gzdt" then
111 item:getChildByName("panel"):getChildByName("flag"):setVisible(false); 111 item:getChildByName("panel"):getChildByName("flag"):setVisible(false);
112 end 112 end
113 113
......
...@@ -27,7 +27,7 @@ local function main() ...@@ -27,7 +27,7 @@ local function main()
27 PROXY_HTTP_ADDR = ConfigInfo.getConfigInfo("proxy_http_addr"); 27 PROXY_HTTP_ADDR = ConfigInfo.getConfigInfo("proxy_http_addr");
28 PROXY_SOCK_ADDR = ConfigInfo.getConfigInfo("proxy_sock_addr"); 28 PROXY_SOCK_ADDR = ConfigInfo.getConfigInfo("proxy_sock_addr");
29 IS_TV = tonumber(ConfigInfo.getConfigInfo("is_tv")); 29 IS_TV = tonumber(ConfigInfo.getConfigInfo("is_tv"));
30 NEED_PAY=tonumber(ConfigInfo.getConfigInfo("need_pay")); --是否需要支付模式 30 --NEED_PAY=tonumber(ConfigInfo.getConfigInfo("need_pay")); --是否需要支付模式
31 31
32 require "core.log.init"; 32 require "core.log.init";
33 require "core.net.socket_connection"; 33 require "core.net.socket_connection";
......
...@@ -237,6 +237,7 @@ ...@@ -237,6 +237,7 @@
237 <Compile Include="src\app\views\shuyishu\GameStartView.lua" /> 237 <Compile Include="src\app\views\shuyishu\GameStartView.lua" />
238 <Compile Include="src\app\views\shuyishu\game_data.lua" /> 238 <Compile Include="src\app\views\shuyishu\game_data.lua" />
239 <Compile Include="src\app\views\shuyishu\LoadingScene.lua" /> 239 <Compile Include="src\app\views\shuyishu\LoadingScene.lua" />
240 <Compile Include="src\app\views\view\XyxPayView_shdx.lua" />
240 <Compile Include="src\app\views\view\XyxPayView_tianjin_cucc.lua" /> 241 <Compile Include="src\app\views\view\XyxPayView_tianjin_cucc.lua" />
241 <Compile Include="src\app\views\view\AchievementDetialView.lua" /> 242 <Compile Include="src\app\views\view\AchievementDetialView.lua" />
242 <Compile Include="src\app\views\view\AchievementGetView.lua" /> 243 <Compile Include="src\app\views\view\AchievementGetView.lua" />
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
6 <ObjectData Name="Layer" Tag="151" ctype="GameLayerObjectData"> 6 <ObjectData Name="Layer" Tag="151" ctype="GameLayerObjectData">
7 <Size X="206.0000" Y="161.0000" /> 7 <Size X="206.0000" Y="161.0000" />
8 <Children> 8 <Children>
9 <AbstractNodeData Name="bg_1" ActionTag="1125726734" Tag="521" IconVisible="False" PositionPercentXEnabled="True" PositionPercentYEnabled="True" LeftMargin="10.5041" RightMargin="16.4959" TopMargin="29.0000" BottomMargin="29.0000" ctype="SpriteObjectData"> 9 <AbstractNodeData Name="bg_1" ActionTag="1125726734" Tag="521" IconVisible="False" PositionPercentXEnabled="True" PositionPercentYEnabled="True" LeftMargin="10.5130" RightMargin="16.4870" TopMargin="29.0000" BottomMargin="29.0000" ctype="SpriteObjectData">
10 <Size X="179.0000" Y="103.0000" /> 10 <Size X="179.0000" Y="103.0000" />
11 <Children> 11 <Children>
12 <AbstractNodeData Name="flag" ActionTag="1315057271" Tag="282" IconVisible="False" LeftMargin="6.5003" RightMargin="114.4997" TopMargin="5.0753" BottomMargin="38.9247" ctype="SpriteObjectData"> 12 <AbstractNodeData Name="flag" ActionTag="1315057271" Tag="282" IconVisible="False" LeftMargin="6.5003" RightMargin="114.4997" TopMargin="5.0753" BottomMargin="38.9247" ctype="SpriteObjectData">
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
22 </AbstractNodeData> 22 </AbstractNodeData>
23 </Children> 23 </Children>
24 <AnchorPoint ScaleX="0.5000" ScaleY="0.5000" /> 24 <AnchorPoint ScaleX="0.5000" ScaleY="0.5000" />
25 <Position X="100.0041" Y="80.5000" /> 25 <Position X="100.0130" Y="80.5000" />
26 <Scale ScaleX="1.0000" ScaleY="1.0000" /> 26 <Scale ScaleX="1.0000" ScaleY="1.0000" />
27 <CColor A="255" R="255" G="255" B="255" /> 27 <CColor A="255" R="255" G="255" B="255" />
28 <PrePosition X="0.4855" Y="0.5000" /> 28 <PrePosition X="0.4855" Y="0.5000" />
......
...@@ -186,7 +186,7 @@ ...@@ -186,7 +186,7 @@
186 <OutlineColor A="255" R="255" G="0" B="0" /> 186 <OutlineColor A="255" R="255" G="0" B="0" />
187 <ShadowColor A="255" R="110" G="110" B="110" /> 187 <ShadowColor A="255" R="110" G="110" B="110" />
188 </AbstractNodeData> 188 </AbstractNodeData>
189 <AbstractNodeData Name="selected" CanEdit="False" ActionTag="-1093744097" VisibleForFrame="False" Tag="149" IconVisible="False" PositionPercentXEnabled="True" PositionPercentYEnabled="True" ctype="SpriteObjectData"> 189 <AbstractNodeData Name="selected" ActionTag="-1093744097" VisibleForFrame="False" Tag="149" IconVisible="False" PositionPercentXEnabled="True" PositionPercentYEnabled="True" ctype="SpriteObjectData">
190 <Size X="162.0000" Y="60.0000" /> 190 <Size X="162.0000" Y="60.0000" />
191 <Children> 191 <Children>
192 <AbstractNodeData Name="txt" ActionTag="-901956718" Tag="150" IconVisible="False" PositionPercentXEnabled="True" PositionPercentYEnabled="True" LeftMargin="28.5000" RightMargin="28.5000" TopMargin="14.9700" BottomMargin="15.0300" FontSize="30" LabelText="开通VIP" ShadowOffsetX="2.0000" ShadowOffsetY="-2.0000" ctype="TextObjectData"> 192 <AbstractNodeData Name="txt" ActionTag="-901956718" Tag="150" IconVisible="False" PositionPercentXEnabled="True" PositionPercentYEnabled="True" LeftMargin="28.5000" RightMargin="28.5000" TopMargin="14.9700" BottomMargin="15.0300" FontSize="30" LabelText="开通VIP" ShadowOffsetX="2.0000" ShadowOffsetY="-2.0000" ctype="TextObjectData">
......
...@@ -2,6 +2,9 @@ ...@@ -2,6 +2,9 @@
2 <Properties> 2 <Properties>
3 <Item Key="GuidesList"> 3 <Item Key="GuidesList">
4 <Value ctype="GuidesData"> 4 <Value ctype="GuidesData">
5 <HorizontalList>
6 <Guides Direction="Horizontal" Position="151.2523" />
7 </HorizontalList>
5 <VerticalList> 8 <VerticalList>
6 <Guides Position="640.6776" /> 9 <Guides Position="640.6776" />
7 </VerticalList> 10 </VerticalList>
......
...@@ -1519,6 +1519,18 @@ ...@@ -1519,6 +1519,18 @@
1519 <Project Name="XyxRankLayer.csd" Type="Layer" /> 1519 <Project Name="XyxRankLayer.csd" Type="Layer" />
1520 <Project Name="XyxRewardItem.csd" Type="Layer" /> 1520 <Project Name="XyxRewardItem.csd" Type="Layer" />
1521 <Project Name="XyxRewardLayer.csd" Type="Layer" /> 1521 <Project Name="XyxRewardLayer.csd" Type="Layer" />
1522 <Folder Name="shanghai_ctcc">
1523 <Image Name="bg_left.png" />
1524 <Image Name="bg_left_selected.png" />
1525 <Image Name="bg_middle.png" />
1526 <Image Name="bg_middle_select.png" />
1527 <Image Name="bg_pay.png" />
1528 <Image Name="bg_right.png" />
1529 <Image Name="bg_right_select.png" />
1530 <Image Name="btn_back.png" />
1531 <Image Name="btn_back_select.png" />
1532 <Project Name="XyxPayLayer.csd" Type="Layer" />
1533 </Folder>
1522 </Folder> 1534 </Folder>
1523 <Project Name="AlertExitLayer.csd" Type="Layer" /> 1535 <Project Name="AlertExitLayer.csd" Type="Layer" />
1524 <Project Name="AlertLayer.csd" Type="Layer" /> 1536 <Project Name="AlertLayer.csd" Type="Layer" />
......
...@@ -28,14 +28,5 @@ ...@@ -28,14 +28,5 @@
28 <LastRunType Value="Windows" /> 28 <LastRunType Value="Windows" />
29 </Value> 29 </Value>
30 </Item> 30 </Item>
31 <Item Key="TabsParamsKey">
32 <Value ctype="TabsInfo">
33 <OpenedDocuments>
34 <FilePathData Path="ui/shop/ShopLayer.csd" />
35 <FilePathData Path="ui/dress/BusinessView.csd" />
36 </OpenedDocuments>
37 <ActiveDocument Path="ui/dress/BusinessView.csd" />
38 </Value>
39 </Item>
40 </Properties> 31 </Properties>
41 </UserData> 32 </UserData>
...\ No newline at end of file ...\ No newline at end of file
......
1 # AngelCode Bitmap Font Generator configuration file
2 fileVersion=1
3
4 # font settings
5 fontName=΢ź
6 fontFile=
7 charSet=0
8 fontSize=-72
9 aa=1
10 scaleH=100
11 useSmoothing=1
12 isBold=1
13 isItalic=0
14 useUnicode=1
15 disableBoxChars=1
16 outputInvalidCharGlyph=0
17 dontIncludeKerningPairs=0
18 useHinting=1
19 renderFromOutline=1
20 useClearType=1
21
22 # character alignment
23 paddingDown=1
24 paddingUp=1
25 paddingRight=1
26 paddingLeft=1
27 spacingHoriz=1
28 spacingVert=1
29 useFixedHeight=0
30 forceZero=0
31
32 # output file
33 outWidth=256
34 outHeight=256
35 outBitDepth=32
36 fontDescFormat=0
37 fourChnlPacked=0
38 textureFormat=png
39 textureCompression=0
40 alphaChnl=0
41 redChnl=4
42 greenChnl=4
43 blueChnl=4
44 invA=0
45 invR=0
46 invG=0
47 invB=0
48
49 # outline
50 outlineThickness=0
51
52 # selected chars
53
54
55 # imported icon images
56 icon="../num_blue/0.png",48,0,0,0
57 icon="../num_blue/1.png",49,0,0,0
58 icon="../num_blue/2.png",50,0,0,0
59 icon="../num_blue/3.png",51,0,0,0
60 icon="../num_blue/4.png",52,0,0,0
61 icon="../num_blue/9.png",57,0,0,0
62 icon="../num_blue/6.png",54,0,0,0
63 icon="../num_blue/7.png",55,0,0,0
64 icon="../num_blue/8.png",56,0,0,0
65 icon="../num_blue/5.png",53,0,0,0
66 icon="../num_blue/-.png",45,0,0,0
1 <html>
2 <head>
3 <title>Bitmap Font Generator - Documentation</title>
4 </head>
5 <body>
6
7 <h1>Bitmap Font Generator - Documentation</h1>
8
9 <p><a href="../documentation.html">Back to main page</a></p>
10
11 <h2>Command line parameters</h2>
12
13 <p>The application can be used from the command line, to performed automated generation of font files. The
14 prerequisite is a font configuration file, that you can save from the application, or even generate yourself.
15 The command line parameters are:</p>
16
17 <ul>
18 <li>-c fontconfig.bmfc : Names the configuration file with the options for generating the font.
19 <li>-o outputfile.fnt : Names of the output font file.
20 <li>-t textfile.txt : Optional argument that names a text file. All characters present in the text file will be
21 added to the font.
22 </ul>
23
24 <p>When running the application from the command line and you want the generation to complete before returning
25 control to the console the bmfont.com application should be used rather than the bmfont.exe application.</p>
26
27
28 </body>
29 </html>
...\ No newline at end of file ...\ No newline at end of file
1 <html>
2 <head>
3 <title>Bitmap Font Generator - Documentation</title>
4 </head>
5 <body>
6
7 <h1>Bitmap Font Generator - Documentation</h1>
8
9 <p><a href="../documentation.html">Back to main page</a></p>
10
11 <h2>Export options</h2>
12
13 <p><img src="export_options.png" align="right"></p>
14
15 <p>You can open the export options dialog by going to the Options menu and
16 choosing Export options, or you can just press T on the keyboard.</p>
17
18 <p>This dialog controls how the font will be stored, i.e. texture layout, file format, etc.</p>
19
20 <h3>Padding</h3>
21
22 <p>Padding is useful when you want to add some post processing effects in another
23 paint program. For example, if you want to add a blurring effect that uses a 5x5 kernel,
24 you would add a padding of 2 on all sides. Similarly if you want to add a drop shadow, you
25 would add a bit of padding below and to the right of the characters (assuming that's the
26 direction of the drop shadow that you want).
27
28 <h3>Spacing</h3>
29
30 <p>The spacing controls how much minimum space is left between characters in the font
31 texture. If you're using mipmapping to scale the font texture when drawing the font, you'll
32 need to add spacing to avoid bleeding when the texture is downscaled. The more mipmap levels
33 you use the more spacing you need.</p>
34
35 <p>Bilinear filtering may also cause bleeding, so unless you use pixel perfect drawing, where
36 each texel is perfectly mapped to a pixel on the screen with a 1-to-1 releation ship you'll
37 want to use at least 1 for vertical and horizontal spacing.</p>
38
39 <h3>Equalize the cell heights</h3>
40
41 <p>When this option is checked, all the font characters will be exported into cells of equal height.
42 This option is especially useful when you workflow for producing the final font includes a post
43 processing step where the characters are 'painted' based on the height of character, e.g. when
44 applying a gradient.</p>
45
46 <p>The drawback is that less characters will fit in the texture, and the font renderer will draw larger
47 rectangles.</p>
48
49 <h3>Force offsets to zero</h3>
50
51 <p>This option was created to improve support for font renderers that don't handle xoffset, yoffset, and xadvance.
52 When the option is checked the glyph images will be padded so that xoffset and yoffset will be 0
53 and xadvance will be equal to the width. This option also forces the equalization of the cell heights.</p>
54
55 <p>Observe, that this will modify the final spacing between characters if the original TrueType font uses negative
56 xoffsets, or xadvance that is smaller than the glyph width, i.e. if the characters have any overhang.</p>
57
58 <h3>Texture</h3>
59
60 <p>BMFont supports several different texture layouts. The width and height, of course control
61 the size of the texture. You'll want to keep the texture as small as possible, while
62 still allowing all characters to fit in one texture.</p>
63
64 <p>If you're importing colored icons, or planning on using post processing to add colors to the
65 characters, then you'll want to choose the 32bit format, otherwise the 8bit format may be sufficient.</p>
66
67 <p>If you choose the 32bit format, you may still optimize the usage of the texture memory if you
68 choose to pack characters in each channel, though that will require a special <a href="pixel_shader.html">pixel shader</a> to
69 decode during drawing. In this mode you can still import colored icons, the characters will be
70 properly packed around them.</p>
71
72 <p>The font outline can also be encoded together with the character in 8 bits, allowing you to
73 store many more characters in the same space than if you had stored the outlined characters as
74 colored images. This too require a special <a href="pixel_shader.html">pixel shader</a> to
75 decode during drawing.</p>
76
77 <p><b>Channel options</b></p>
78
79 <ul>
80 <li><i>glyph</i> : The channel will be set according to the glyph geometry. A value of 1 means the pixel is within the glyph.
81 <li><i>outline</i> : The channel will be set according to the outline geometry. A value of 1 means the pixel is within the outline or glyph.
82 <li><i>glyph + outline</i> : The value is encoded to allow separation of glyph and outline. A value of 0.5 means the pixel is within the outline, but not within the glyph. A value of 1 means the pixel is within the glyph.
83 <li><i>one</i> : All pixels in the channel will be set to 1.
84 <li><i>zero</i> : All pixels in the channel will be set to 0.
85 </ul>
86
87 <p>Some of the more common choices are:</p>
88
89 <ul>
90 <li>32bit white glyphs with black outline: alpha = <i>outline</i>, red = green = blue = <i>glyph</i>
91 <li>32bit white glyphs without outline: alpha = <i>glyph</i>, red = green = blue = <i>one</i>
92 <li>packed textures with glyph and outline encoded in 8 bits: alpha = <i>glyph + outline</i>
93 <li>packed textures with glyphs without outline: alpha = <i>glyph</i>
94 </ul>
95
96 <h3>File format</h3>
97
98 <p>Finally you can choose the file format for both the font descriptor and textures. This is mostly
99 a matter of choice, rather than one having more benefits than the other. Though if you want to save
100 disc space, you may want to choose binary file descriptor with png textures.</p>
101
102 </body>
103 </html>
...\ No newline at end of file ...\ No newline at end of file
1 <html>
2 <head>
3 <title>Bitmap Font Generator - Documentation</title>
4 </head>
5 <body>
6
7 <h1>Bitmap Font Generator - Documentation</h1>
8
9 <p><a href="../documentation.html">Back to main page</a></p>
10
11 <h2>Font settings</h2>
12
13 <p><img src="font_settings.png" align="right"></p>
14
15 <p>You can open the font settings dialog by going to the Options menu and choosing Font
16 settings, or you can just press F on the keyboard.</p>
17
18 <p>This dialog controls the properties of the font, i.e. the character
19 set, and looks.</p>
20
21 <h2>Font graphics</h2>
22
23 <p>These settings will let you choose the font face to use, and a few other options, such as whether
24 the unicode or OEM character set is to be used.
25
26 <p>The invalid character glyph is the glyph that is used by the font as fallback when there is no appropriate
27 glyph in the TrueType font for a specific character.
28
29 <p>The option to not include kerning pairs is useful when the application that will use the generated
30 bitmap font doesn't support kerning pairs, or when the source TrueType font has incorrect kerning pairs.
31
32 <h2>Rasterizing</h3>
33
34 <p>The option to render from TrueType outline was added because the native font engine in Windows clips glyphs that go above or below the cell height.
35 Normally this isn't a problem and in most cases you probably won't notice much difference between the two forms of rasterizing the glyphs.</p>
36
37 <p>TrueType hinting is something that makes the text more readable when rendered in small sizes by lining up the edges to the screen pixels. In the
38 native font engine this is always turned on, but when rendering from the outline you have the option to turn this off, thus getting the exact forms of the
39 characters. Be aware that for small fonts it might turn thin lines invisible thus making the glyphs unreadable.</p>
40
41 <p>ClearType is an option that the native font engine provides which takes advantage of the LCD/LED screens' pixel layouts to use subpixel
42 smoothing. When rasterizing the glyphs to the texture the subpixel smoothing is lost, but it can still give a nice antialiasing effect so this
43 option is made available to be used as desired.</p>
44
45 <p>When fonts are generated with font smoothing it is recommended that only font smoothing is used. If super sampling is used the resulting font may
46 loose a bit of its sharpness due to averaging when down sampling. This is especially noticeable when small fonts are generated. Supersampling may be useful
47 for raster fonts where font smoothing doesn't work.</p>
48
49 <h2>Effects</h2>
50
51 <p>The fonts can optionally be generated with a baked-in outline of variable width. If outline is used the font will take up a bit more texture space, but on the other hand the outline doesn't have to be generated at run-time when drawing the text.</p>
52
53
54 </body>
55 </html>
...\ No newline at end of file ...\ No newline at end of file
1 <html>
2 <head>
3 <title>Bitmap Font Generator - Documentation</title>
4 </head>
5 <body>
6
7 <h1>Bitmap Font Generator - Documentation</h1>
8
9 <p><a href="../documentation.html">Back to main page</a></p>
10
11 <h2>Known issues</h2>
12
13 <h3>Rotated characters</h3>
14
15 <p>Some font files have some but not all subsets with characters rotated by 90 degrees. For example @Arial Unicode MS,
16 with subset Enclosed Alphanumerics. This is not an error, but a feature of that font file. With the font rotated
17 like this it permits writing texts in normal text editors as if they were in vertical lines.</p>
18
19 <p>As of version 1.13 the rotated fonts are no longer displayed in the font selection list.</p>
20
21 <h3>Large bitmap fonts switch to Arial</h3>
22
23 <p>Some bitmap fonts, e.g. FixedSys, may switch to Arial when generating very large fonts. This is a side effect of
24 BMFont using GDI for rasterizing the fonts. As GDI doesn't support rendering these bitmap fonts at very large sizes it
25 automatically switches to the default TrueType font, Arial, instead.</p>
26
27 <h3>When executing BMFont from the command line the application returns before completing</h3>
28
29 <p>This happens because BMFont is a GUI application and Windows automatically returns the control to the console
30 after initiating the application. A console application, bmfont.com, has been created to allow the execution of the
31 tool from the command line without immediate return to the console.</p>
32
33 <h3>The bitmap font is generated with incorrect kerning pairs</h3>
34
35 <p>For some TrueType fonts the kerning pairs that are saved into the bitmap font is obviously wrong, e.g. with
36 duplicate entries, or offsets that are really large. This is usually a problem with the TrueType font itself, and not
37 a bug in BMFont, as BMFont simply saves the kerning pairs it extracts from the TrueType font.</p>
38
39 <p>BMFont provides an option to skip the kerning pairs when saving the bitmap font, which can be used when they are defunct and unusable.</p>
40
41 <h3>Cropped character glyphs</h3>
42
43 <p>When rendering the bitmap font using the Windows native font renderer, some TrueType fonts present cropped glyphs. This happens
44 when the TrueType font has glyphs that go above or below the fonts cell height.</p>
45
46 <p>To work around this, render the font from the TrueType outline instead.</p>
47
48 </body>
49 </html>
...\ No newline at end of file ...\ No newline at end of file
1 <html>
2 <head>
3 <title>Bitmap Font Generator - Documentation</title>
4 </head>
5 <body>
6
7 <h1>Bitmap Font Generator - Documentation</h1>
8
9 <p><a href="../documentation.html">Back to main page</a></p>
10
11 <h2>Pixel shader example</h2>
12
13 <p>This pixel shader shows how to decode the color from a font texture with characters packed
14 into all 4 channels, and each channel using special encoding to store the character with the
15 outline. The texture is also allowed to store full 32bit images for some characters.</p>
16
17 <pre>
18 // DirectX 9 pixel shader
19 float4 PixScene( float4 color : COLOR0,
20 int4 chnl : TEXCOORD1,
21 float2 tex0 : TEXCOORD0 ) : COLOR0
22 {
23 float4 pixel = tex2D(g_samScene, tex0);
24
25 if( dot(vector(1,1,1,1), chnl) )
26 {
27 float val = dot(pixel, chnl);
28
29 pixel.rgb = val > 0.5 ? 2*val-1 : 0;
30 pixel.a = val > 0.5 ? 1 : 2*val;
31 }
32
33 return pixel * color;
34 }
35 </pre>
36
37 <p>The chnl texture coordinate is a 4D vector that shows which channel the character should be read
38 from. If this is (0,0,0,0) the character is interpreted as a 32 bit image. The texture coordinate
39 can be stored in a UBYTE4 type, so it doesn't require much bandwidth when being sent to the video card.</p>
40
41
42
43 </body>
44 </html>
...\ No newline at end of file ...\ No newline at end of file
1 <html>
2 <head>
3 <title>Bitmap Font Generator - Documentation</title>
4 </head>
5 <body>
6
7 <h1>Bitmap Font Generator - Documentation</h1>
8
9 <p>The Bitmap Font Generator is a free program to generate bitmap fonts from true type fonts.
10 The bitmaps are generated in such a way as to leave as little unused space as possible. The
11 position of the characters in the bitmap is not regular so you'll need the generated font
12 descriptor file to determine how to draw each character.</p>
13
14 <ul>
15 <li><a href="doc/font_settings.html">Font settings</a>
16 <li><a href="doc/export_options.html">Export options</a>
17 <li><a href="doc/command_line.html">Command line parameters</a>
18 <li><a href="doc/file_format.html">File format</a>
19 <li><a href="doc/pixel_shader.html">Pixel shader sample</a>
20 <li><a href="doc/known_issues.html">Known issues</a>
21 </ul>
22
23 </body>
24 </html>
...\ No newline at end of file ...\ No newline at end of file
1 info face="Բ_GBK" size=-26 bold=1 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=1 padding=0,0,0,0 spacing=1,1 outline=0
2 common lineHeight=29 base=23 scaleW=128 scaleH=64 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4
3 page id=0 file="brown_26.png"
4 chars count=18
5 char id=32 x=108 y=21 width=1 height=1 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=15
6 char id=36 x=0 y=0 width=15 height=24 xoffset=0 yoffset=2 xadvance=15 page=0 chnl=15
7 char id=39 x=95 y=21 width=5 height=8 xoffset=1 yoffset=4 xadvance=7 page=0 chnl=15
8 char id=42 x=83 y=21 width=11 height=11 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=15
9 char id=46 x=101 y=21 width=6 height=5 xoffset=1 yoffset=19 xadvance=8 page=0 chnl=15
10 char id=48 x=16 y=0 width=16 height=20 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15
11 char id=49 x=51 y=21 width=9 height=19 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=15
12 char id=50 x=113 y=0 width=14 height=19 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15
13 char id=51 x=33 y=0 width=15 height=20 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15
14 char id=52 x=18 y=21 width=16 height=19 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15
15 char id=53 x=49 y=0 width=15 height=20 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15
16 char id=54 x=65 y=0 width=15 height=20 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15
17 char id=55 x=35 y=21 width=15 height=19 xoffset=0 yoffset=4 xadvance=15 page=0 chnl=15
18 char id=56 x=81 y=0 width=15 height=20 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15
19 char id=57 x=97 y=0 width=15 height=20 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15
20 char id=58 x=76 y=21 width=6 height=14 xoffset=1 yoffset=10 xadvance=8 page=0 chnl=15
21 char id=120 x=61 y=21 width=14 height=14 xoffset=0 yoffset=9 xadvance=14 page=0 chnl=15
22 char id=65509 x=0 y=25 width=17 height=19 xoffset=5 yoffset=4 xadvance=27 page=0 chnl=15
1 # AngelCode Bitmap Font Generator configuration file
2 fileVersion=1
3
4 # font settings
5 fontName=΢ź
6 fontFile=
7 charSet=0
8 fontSize=-72
9 aa=1
10 scaleH=100
11 useSmoothing=1
12 isBold=1
13 isItalic=0
14 useUnicode=1
15 disableBoxChars=1
16 outputInvalidCharGlyph=0
17 dontIncludeKerningPairs=0
18 useHinting=1
19 renderFromOutline=1
20 useClearType=1
21
22 # character alignment
23 paddingDown=1
24 paddingUp=1
25 paddingRight=1
26 paddingLeft=1
27 spacingHoriz=1
28 spacingVert=1
29 useFixedHeight=0
30 forceZero=0
31
32 # output file
33 outWidth=256
34 outHeight=512
35 outBitDepth=32
36 fontDescFormat=0
37 fourChnlPacked=0
38 textureFormat=png
39 textureCompression=0
40 alphaChnl=0
41 redChnl=4
42 greenChnl=4
43 blueChnl=4
44 invA=0
45 invR=0
46 invG=0
47 invB=0
48
49 # outline
50 outlineThickness=0
51
52 # selected chars
53
54
55 # imported icon images
56 icon="num_gray/0.png",48,0,0,0
57 icon="num_gray/1.png",49,0,0,0
58 icon="num_gray/2.png",50,0,0,0
59 icon="num_gray/3.png",51,0,0,0
60 icon="num_gray/4.png",52,0,0,0
61 icon="num_gray/5.png",53,0,0,0
62 icon="num_gray/6.png",54,0,0,0
63 icon="num_gray/7.png",55,0,0,0
64 icon="num_gray/8.png",56,0,0,0
65 icon="num_gray/9.png",57,0,0,0
1 # AngelCode Bitmap Font Generator configuration file
2 fileVersion=1
3
4 # font settings
5 fontName=΢ź
6 fontFile=
7 charSet=0
8 fontSize=-72
9 aa=1
10 scaleH=100
11 useSmoothing=1
12 isBold=1
13 isItalic=0
14 useUnicode=1
15 disableBoxChars=1
16 outputInvalidCharGlyph=0
17 dontIncludeKerningPairs=0
18 useHinting=1
19 renderFromOutline=1
20 useClearType=1
21
22 # character alignment
23 paddingDown=1
24 paddingUp=1
25 paddingRight=1
26 paddingLeft=1
27 spacingHoriz=1
28 spacingVert=1
29 useFixedHeight=0
30 forceZero=0
31
32 # output file
33 outWidth=256
34 outHeight=256
35 outBitDepth=32
36 fontDescFormat=0
37 fourChnlPacked=0
38 textureFormat=png
39 textureCompression=0
40 alphaChnl=0
41 redChnl=4
42 greenChnl=4
43 blueChnl=4
44 invA=0
45 invR=0
46 invG=0
47 invB=0
48
49 # outline
50 outlineThickness=0
51
52 # selected chars
53 chars=55
54
55 # imported icon images
56 icon="num_blue/0.png",48,0,0,0
57 icon="num_blue/1.png",49,0,0,0
58 icon="num_blue/2.png",50,0,0,0
59 icon="num_blue/3.png",51,0,0,0
60 icon="num_blue/4.png",52,0,0,0
61 icon="num_blue/9.png",57,0,0,0
62 icon="num_blue/6.png",54,0,0,0
63 icon="num_blue/7.png",55,0,0,0
64 icon="num_blue/8.png",56,0,0,0
65 icon="num_blue/5.png",53,0,0,0
66 icon="num_blue/-.png",45,0,0,0
1 info face="΢ź" size=-72 bold=1 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=1 padding=1,1,1,1 spacing=1,1 outline=0
2 common lineHeight=96 base=76 scaleW=256 scaleH=256 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4
3 page id=0 file="fnt_num_blue_0.png"
4 chars count=11
5 char id=45 x=0 y=0 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
6 char id=48 x=45 y=0 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
7 char id=49 x=90 y=0 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
8 char id=50 x=135 y=0 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
9 char id=51 x=180 y=0 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
10 char id=52 x=0 y=59 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
11 char id=53 x=45 y=59 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
12 char id=54 x=90 y=59 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
13 char id=55 x=135 y=59 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
14 char id=56 x=180 y=59 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
15 char id=57 x=0 y=118 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
1 info face="΢ź" size=-72 bold=1 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=1 padding=1,1,1,1 spacing=1,1 outline=0
2 common lineHeight=96 base=76 scaleW=256 scaleH=512 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4
3 page id=0 file="fnt_num_gray_0.png"
4 chars count=10
5 char id=48 x=0 y=0 width=67 height=89 xoffset=-1 yoffset=-1 xadvance=65 page=0 chnl=15
6 char id=49 x=201 y=0 width=45 height=88 xoffset=-1 yoffset=-1 xadvance=43 page=0 chnl=15
7 char id=50 x=127 y=90 width=62 height=88 xoffset=-1 yoffset=-1 xadvance=60 page=0 chnl=15
8 char id=51 x=66 y=90 width=60 height=89 xoffset=-1 yoffset=-1 xadvance=58 page=0 chnl=15
9 char id=52 x=0 y=180 width=71 height=87 xoffset=-1 yoffset=-1 xadvance=69 page=0 chnl=15
10 char id=53 x=190 y=90 width=59 height=88 xoffset=-1 yoffset=-1 xadvance=57 page=0 chnl=15
11 char id=54 x=135 y=0 width=65 height=89 xoffset=-1 yoffset=-1 xadvance=63 page=0 chnl=15
12 char id=55 x=72 y=180 width=65 height=87 xoffset=-1 yoffset=-1 xadvance=63 page=0 chnl=15
13 char id=56 x=68 y=0 width=66 height=89 xoffset=-1 yoffset=-1 xadvance=64 page=0 chnl=15
14 char id=57 x=0 y=90 width=65 height=89 xoffset=-1 yoffset=-1 xadvance=63 page=0 chnl=15
1 info face="΢ź" size=-72 bold=1 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=1 padding=1,1,1,1 spacing=1,1 outline=0
2 common lineHeight=96 base=76 scaleW=256 scaleH=512 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4
3 page id=0 file="fnt_num_red_0.png"
4 chars count=10
5 char id=48 x=0 y=0 width=67 height=89 xoffset=-1 yoffset=-1 xadvance=65 page=0 chnl=15
6 char id=49 x=201 y=0 width=45 height=88 xoffset=-1 yoffset=-1 xadvance=43 page=0 chnl=15
7 char id=50 x=127 y=90 width=62 height=88 xoffset=-1 yoffset=-1 xadvance=60 page=0 chnl=15
8 char id=51 x=66 y=90 width=60 height=89 xoffset=-1 yoffset=-1 xadvance=58 page=0 chnl=15
9 char id=52 x=0 y=180 width=71 height=87 xoffset=-1 yoffset=-1 xadvance=69 page=0 chnl=15
10 char id=53 x=190 y=90 width=59 height=88 xoffset=-1 yoffset=-1 xadvance=57 page=0 chnl=15
11 char id=54 x=135 y=0 width=65 height=89 xoffset=-1 yoffset=-1 xadvance=63 page=0 chnl=15
12 char id=55 x=72 y=180 width=65 height=87 xoffset=-1 yoffset=-1 xadvance=63 page=0 chnl=15
13 char id=56 x=68 y=0 width=66 height=89 xoffset=-1 yoffset=-1 xadvance=64 page=0 chnl=15
14 char id=57 x=0 y=90 width=65 height=89 xoffset=-1 yoffset=-1 xadvance=63 page=0 chnl=15
1 # AngelCode Bitmap Font Generator configuration file
2 fileVersion=1
3
4 # font settings
5 fontName=΢ź
6 fontFile=
7 charSet=0
8 fontSize=-72
9 aa=1
10 scaleH=100
11 useSmoothing=1
12 isBold=1
13 isItalic=0
14 useUnicode=1
15 disableBoxChars=1
16 outputInvalidCharGlyph=0
17 dontIncludeKerningPairs=0
18 useHinting=1
19 renderFromOutline=1
20 useClearType=1
21
22 # character alignment
23 paddingDown=1
24 paddingUp=1
25 paddingRight=1
26 paddingLeft=1
27 spacingHoriz=1
28 spacingVert=1
29 useFixedHeight=0
30 forceZero=0
31
32 # output file
33 outWidth=256
34 outHeight=256
35 outBitDepth=32
36 fontDescFormat=0
37 fourChnlPacked=0
38 textureFormat=png
39 textureCompression=0
40 alphaChnl=0
41 redChnl=4
42 greenChnl=4
43 blueChnl=4
44 invA=0
45 invR=0
46 invG=0
47 invB=0
48
49 # outline
50 outlineThickness=0
51
52 # selected chars
53 chars=55
54
55 # imported icon images
56 icon="num_yellow/0.png",48,0,0,0
57 icon="num_yellow/1.png",49,0,0,0
58 icon="num_yellow/2.png",50,0,0,0
59 icon="num_yellow/3.png",51,0,0,0
60 icon="num_yellow/4.png",52,0,0,0
61 icon="num_yellow/9.png",57,0,0,0
62 icon="num_yellow/6.png",54,0,0,0
63 icon="num_yellow/7.png",55,0,0,0
64 icon="num_yellow/8.png",56,0,0,0
65 icon="num_yellow/5.png",53,0,0,0
66 icon="num_yellow/+.png",43,0,0,0
1 info face="΢ź" size=-72 bold=1 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=1 padding=1,1,1,1 spacing=1,1 outline=0
2 common lineHeight=96 base=76 scaleW=256 scaleH=256 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4
3 page id=0 file="fnt_num_yellow_0.png"
4 chars count=11
5 char id=43 x=0 y=0 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
6 char id=48 x=45 y=0 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
7 char id=49 x=90 y=0 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
8 char id=50 x=135 y=0 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
9 char id=51 x=180 y=0 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
10 char id=52 x=0 y=59 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
11 char id=53 x=45 y=59 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
12 char id=54 x=90 y=59 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
13 char id=55 x=135 y=59 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
14 char id=56 x=180 y=59 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
15 char id=57 x=0 y=118 width=44 height=58 xoffset=-1 yoffset=-1 xadvance=42 page=0 chnl=15
1 info face="Ƹഺֺ2.0" size=35 bold=0 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=1 padding=0,0,0,0 spacing=1,1 outline=0
2 common lineHeight=35 base=28 scaleW=256 scaleH=128 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4
3 page id=0 file="stagenum01.png"
4 chars count=10
5 char id=48 x=0 y=0 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
6 char id=49 x=222 y=0 width=18 height=42 xoffset=0 yoffset=0 xadvance=18 page=0 chnl=15
7 char id=50 x=37 y=0 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
8 char id=51 x=74 y=0 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
9 char id=52 x=111 y=0 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
10 char id=53 x=148 y=0 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
11 char id=54 x=185 y=0 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
12 char id=55 x=0 y=43 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
13 char id=56 x=37 y=43 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
14 char id=57 x=74 y=43 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
1 info face="Ƹഺֺ2.0" size=35 bold=0 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=1 padding=0,0,0,0 spacing=1,1 outline=0
2 common lineHeight=35 base=28 scaleW=256 scaleH=128 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4
3 page id=0 file="stagenum02.png"
4 chars count=10
5 char id=48 x=0 y=0 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
6 char id=49 x=222 y=0 width=18 height=42 xoffset=0 yoffset=0 xadvance=18 page=0 chnl=15
7 char id=50 x=37 y=0 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
8 char id=51 x=74 y=0 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
9 char id=52 x=111 y=0 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
10 char id=53 x=148 y=0 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
11 char id=54 x=185 y=0 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
12 char id=55 x=0 y=43 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
13 char id=56 x=37 y=43 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
14 char id=57 x=74 y=43 width=36 height=42 xoffset=0 yoffset=0 xadvance=36 page=0 chnl=15
1 前往剧情模式完成高老庄第关前往剧情模式完成高老庄第四关高老庄第九关完成1次无尽模式完成次挑战模式完成1次挑战模式第关点击开始剧情模式的挑战吧点击开始第关的挑战吧点击开始挑战点击发射泡泡喽点击继续游戏点击小黑猪可以交换手中的泡泡哦点击购买道具瞄准线本次免费点击开始进入游戏点击使用道具瞄准线按住屏幕或拖拽瞄准线来显示泡泡移动和反弹轨迹点击购买道具火球本次免费哦点击开始,进入游戏点击使用道具火球再次点击火球道具可取消使用哦击中爆竹就能引爆消除周边的泡泡哦击中它消除一整行的泡泡击中闪电能消除相同颜色的所有泡结冰泡泡需要两次才能消除哦风车会带动泡泡旋转,击中核心就能击落它点击购买加泡泡道具本次免费哦点击开始,进入游戏点击购买道具彩虹泡泡点击购买加时间道具沙漏,本次免费哦点击开始,进入游戏点击购买道具芭蕉扇,本次免费哦点击开始,进入游戏点击购买道具冰锥,本次免费哦点击开始,进入游戏消除连在大泡泡周边同颜色的泡泡,才能消灭哦无尽玩法开启了快去瞧瞧吧只能挑战已击败的剧情快开始挑战吧点击关闭,给你看些新玩法哦点击返回主界面进入极限挑战模式点击开始极限模式的挑战吧显示泡泡的轨迹万能的消除泡增加个泡泡数量增加10秒游戏时间会爆炸的小火球改变4排颜色向上刺穿5个分数:1234567890 :只差一点就通关了,继续加油哦~增数量10秒改变4排泡泡颜色向上刺穿5个泡泡万能的消除【】,.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ提示框是否确定要退出游戏?你的体力已满你没有足够的元宝你没有足够的体力不我觉得还可以抢救一下!\n复活 +10 泡泡火焰山高老庄火焰山龙门客栈长安城流沙河桃花岛龙宫女儿国灵山大雷音寺退出暂未
2 开放敬请期待设置
...\ No newline at end of file ...\ No newline at end of file
No preview for this file type
This diff could not be displayed because it is too large.
No preview for this file type