玩轉cocos2d x之十六 滾動字幕和公告

2021-08-27 15:18:37 字數 1094 閱讀 4968

滾動字幕和公告是遊戲中經常使用到的元素,本文大致寫一下實現方法,至於例子中具體的座標值,請不要糾結。。。這和美工關係還是蠻大的。我ps技術太搓了。。。

其實它們的實現都是簡單的通過呼叫update來更新位置達到的移動效果,和背景滾動有點類似,一旦滾動結束就重置為起點,開始新的滾動。只是為了達到在某個區域內滾動而不至於超出這個區域,有時候會用一些前景圖來做遮蓋,所以這個時候其實字幕或者公告是有在後面滾動的,但是被遮住了,因此看起來就像是只在某個區域內滾動。以垂直字幕滾動為例說明,如下圖。

不要糾結以下各精靈

的座標位置:)

[cpp]view plain

copy

bool

ctestlayer::init()

while

(0);

return

bret; }

void

ctestlayer::update(

float

delta)

text1->setpositiony(newy);

intnewx=text2->getpositionx()-1; if

(newx<=-text2->getcontentsize().width/2)

//如果滾動到這個位置,重置

text2->setpositionx(newx);}

這個效果有點小bug,就是文字覆蓋到邊框上了,這是因為沒有把邊框做在top層上導致的,實際使用注意這個問題即可。

cocos2d x 滾動數字label

遊戲中有時候需要滾動計數顯示,比如新增金幣從100滾動顯示到9999,這裡封裝乙個動作,直接傳入label即可,方便使用。使用時呼叫utilslabel裡面的方法即可。utilslabel.hpp actionlabel created by xujw on 16 3 7.ifndef utilsl...

cocos2d x 之UITextField的使用

本文使用的是cocos2d x 2.1.6版本,cocosstudio1.6.0.0版本。其呼叫的相關 如下 bool helloworld init void helloworld textfieldevent ccobject psender,textfiledeventtype type 不過...

Cocos2d x之場景切換

在很多rpg遊戲中大部分存在多個場景,如開始的歡迎介面 選單介面 戰鬥介面 場景切換只需要呼叫ccdirector shareddirector replacescene s s為新的場景,這句 的是含意,是用新的場景s去替換掉舊的場景,但是這樣的場景替換,來得太突然,給使用者的感覺不太好,我們需要...