实现一个四个转子,每个转子有五个花色的老*虎机。转子的转动实现原理很简单,和背景图无限滚动的原理是一样的:排成列的精灵在屏幕上向上滚动,再通过裁剪结点的裁剪就造成了转子滚动的效果。
1 void LayerSlotMachine::on_btn_roll(CCObject* pSender, CCControlEvent event) 2 { 3 if (!flag_act_) 4 { 5 schedule(schedule_selector(XLayerSlotMachine::roll_update)); 6 stop_flag_ = 0; 7 int target_index; 8 float mov_dis; 9 10 target_index = rand() % 5; 11 CCLOG("slot1:%d", target_index); 12 mov_dis = get_mov_dis(target_index, cur_index1_); 13 cur_index1_ = target_index; 14 roll_act_start(array_1_, mov_dis); 15 16 target_index = rand() % 5; 17 CCLOG("slot2:%d", target_index); 18 mov_dis = get_mov_dis(target_index, cur_index2_); 19 cur_index2_ = target_index; 20 roll_act_start(array_2_, mov_dis); 21 2