最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

[Ren'Py 進階教程] 商店/物品/背包(后端部分)

2022-05-05 08:39 作者:黑鳳梨BlackPineappl  | 我要投稿

效果展示:


代碼下載地址見評論

使用規(guī)則

教程中的代碼可以用于非商用/商用的游戲,不需要和本人聯(lián)系,但是需要在發(fā)布的時候署名。

署名信息:

Black Pineapple

blue.pepper.2019@gmail.com


禁止事項

  • 非代碼素材,比如美術(shù),聲音等,未經(jīng)過本人許可,都禁止使用。

  • 代碼禁止用于非游戲的商用場合,比如在付費的教程中使用本代碼,再比如加工后單純出售代碼。


前言

本系列教程是Ren'Py的進階教程,適合于有一定基礎(chǔ)的同學(xué)。推薦至少讀完了官方文檔里起步,官方自帶的教程(Ren’Py Launcher里那個),或者各大新手教程中的一個。


本教程是關(guān)于如何實現(xiàn)一個商店/物品系統(tǒng)。

物品類(ItemClass.rpy)

物品類在這個教程里有兩個一個是基類Item,一個是派生類BoosterItem。簡單的來說,Item就是所有的東西,BoosterItem是一個具體的東西,BoosterItem這里是使用來可以增加人物屬性的東西。同學(xué)們后面可以自己定義別的類型的物品,比如可以無限次使用的耐用品。


關(guān)于繼承方面的知識請查閱python Inheritance(繼承), 關(guān)于類的知識請直接搜python class(類)。

Item

__init__函數(shù)

這是所有類都有的初始化函數(shù),這里定義了兩個變量,一個是name是物品的名字,一個是img是物品的圖片。如果需要添加什么自己需要的變量,可以仿照name增加。

__eq__函數(shù)和__hash__函數(shù)

因為后面用了item這個類來做字典的鍵值,所以需要這兩個函數(shù),用來比較兩個物品對象是不是一個物品。

請自行查閱python dict(字典),來了解字典相關(guān)知識。


get_icon函數(shù)

返回一個物品圖片位置的字符串。e.g. “images/items/fox.png”

BoosterItem

__init__函數(shù)

因為是派生類,所以會有下面的語句


所有圖片的路徑都被直接設(shè)定為:'images/items/' + name + '.png


use函數(shù)

這個函數(shù)會根據(jù)這個物品的booster屬性,增加使用者對應(yīng)的屬性。


例子:


如果在按鈕里調(diào)用函數(shù),可以參考Function


關(guān)于物品的例子,可以參考0shop_items.rpy

Inventory(InventoryClass.rpy)

字典可以理解為一個儲物柜,需要號碼,才能找到具體是哪個格子,然后拿到里面的東西。關(guān)于字典的知識請直接搜python dict(字典)。這個類可以理解為一個儲物柜,每種物品放一格,可以用于商店的庫存,玩家的物品格等。


__init__函數(shù)

__str__函數(shù)

這個函數(shù)是用來在控制臺debug的時候,可以打印出目前倉庫里所有的東西和數(shù)量。

剩下的函數(shù)解釋請看代碼中的注釋。


商店Shop (ShopClass.rpy)

請看代碼中的注釋。


玩家Player(PlayerClass.rpy)

請參考代碼內(nèi)注釋


GridHelper(GridHelper.rpy)

這個函數(shù)是用來計算,格子的數(shù)量,配合grid關(guān)鍵字使用。

MINIMUM_NUM_ROWS 是格子至少有多少行,比如物品比較少的時候可能只有1行,但是制作者可以指定至少顯示2行。

NUM_COLUMN 是有多少列。


[Ren'Py 進階教程] 商店/物品/背包(后端部分)的評論 (共 條)

分享到微博請遵守國家法律
乡城县| 长岭县| 榕江县| 陵水| 揭阳市| 南昌市| 邵武市| 苗栗市| 登封市| 长兴县| 新竹县| 壶关县| 衡南县| 宝清县| 平度市| 景泰县| 邓州市| 沽源县| 宜兰县| 淳化县| 伊春市| 沛县| 乌苏市| 凉城县| 益阳市| 合川市| 鸡泽县| 呼图壁县| 双鸭山市| 宣威市| 密云县| 桐梓县| 读书| 宜都市| 奉贤区| 白银市| 凯里市| 阿拉善右旗| 中西区| 古丈县| 库车县|