固定主角出生點 物件層的使用

2021-06-28 20:07:28 字數 1329 閱讀 6518

上一章中,主角的座標是在**裡寫死的,我們還可以更靈活一點,tiled 

map還有乙個很膩害的功能,那就是:物件層。

其實沒有多神氣,就是在地圖上的某個位置設定乙個物件,然後可以在**裡

獲取這個物件的資訊,比如座標。

開啟tiled地圖編輯器,依次單擊選單欄的[圖層] -> [新增物件層],新建乙個

物件層,命名為objects,如圖:

接下來,選中objects圖層,我們要繪製物件,在選單欄中選中「插入物件」按

鈕,如下:

然後在地圖左邊繪製乙個矩形,它代表乙個物件,如圖:

接下來,我們要給這個物件命名,在矩形物件上單擊滑鼠右鍵,選擇物件屬

性,然後命名為playerpoint,如圖:

我們現在只要在**裡取得playerpoint物件,再獲得它的x,y屬性就可以了。

繼續開啟tollgatescene.cpp檔案,修改addplayer函式:

cctmxobjectgroup物件存放了物件層的所有物件,通過

objectgroupnamed函式獲取指定名稱的物件層,於是我們就得到了某個物件曾

的所有物件,這些物件用乙個類似hashmap的容器存放(乙個key對應乙個

value)。

map->objectgroupnamed("objects")就是取得了我們剛剛建立的objects對

象層裡的所有物件,當然,目前只有乙個playerpoint物件。

怎麼取得playerpoint物件呢,通過objectnamed函式來獲得,獲得之後返回

的是乙個ccdictionary物件(和hashmap差不多的概念)。

我們從playerpointdic裡取得playerpoint物件的x、y座標值,然後給玩家設

置座標就可以了。

編譯執行,我們的主角就出現在我們需要的位置了:

VR重定位玩家出生點 III

依舊是vr重定位問題,前兩種計算 vr重定位玩家出生點 i,vr重定位玩家出生點 ii 均沒考慮playerstart也就是出生點不在原點的情況,另外專案中還有玩家還會在vr場景就移動一小段距離之後再跳轉場景的情況,這就會產生新的問題。最新的演算法是 1 在校準頭盔位置到原點時只計算攝像機到原點的偏...

6 固定和的元素對

description 輸入乙個陣列和乙個數字,在陣列中查詢兩個數,使得它們的和正好是輸入的那個數字,統計這樣兩個數的對數。input 輸入第一行是陣列,每乙個數用空格隔開 第二行是數字和。output 輸出這樣兩個數有幾對。sample input 1 1 2 4 7 11 0 9 15 11 s...

12星座的出生年月日性格 出生年月與星座對照表

金牛座 04月20日 05月20日 05月16日 06月15日 05月14日 06月19日 穀雨 小滿前一天 雙子座 05月21日 06月21日 06月16日 07月15日 06月20日 07月20日 小滿 夏至前一天 巨蟹座 06月22日 07月22日 07月16日 08月15日 07月21日 0...