2.內購如何實現

內購概述:

遊戲內購是指玩家在遊戲中,用金錢獲取遊戲道具的一種方式。開發者從玩家內購之中獲得開發遊戲的收益,因此大量遊戲都有內購模組。下面我們以在手機IOS平臺實現跑酷遊戲內購為例,介紹一下游戲內購的基本流程。

原理:

內購流程圖,如圖2-1所示。


圖2-1

實現方法:

步驟1:

開發者將產品道具上架。用固有開發者賬號在Game center上註冊mpid,其中包括上架物品資訊:名稱、編號和價格等。產品道具上架之前,開發者需要在iPhone DevCenter上註冊成為iphone develop。如果沒有,需要花$99.00在蘋果官方註冊購買賬號。註冊固有賬號及上架道具產品可參考蘋果官方網站:https://developer.apple.com。

步驟2:

UI的製作。這塊就開發者自定義設計了,一般包含內容為:按鈕,道具名稱,道具資訊等內容。

步驟3:

內購的實現。

3.1引擎提供了與APP Store之間的介面呼叫功能。玩家在遊戲中購買道具的流程圖,如圖2-3-1-1所示。流程實現中,開發者只需要新增下列一段程式碼即可。

內購流程圖,如圖2-3-1-1所示。


圖2-3-1-1
01 private void Store_Coin1_Buy_Click(FString sender)
02 {
03         string mPid = "0001";//註冊時,使用者定義的產品編號
04         InAppPurchase.BuyProduct(mPid);//內購介面
05         }
06 3.2回撥函式。當玩家在遊戲進行相關的UI按鈕操控後,購買成功或者失敗會給使用者一個購買結果的資訊,這裡需要有一個回撥函式。開發者需要新增IAPCallBack.cs這樣一個檔案,引擎規定這個檔案裡的類名,必須如下述程式碼類名一致。
07   public class InAppPurchaseInstance : RuntimeInAppPurchaseInstance
08   {
09    public override void OnSKPurchaseSucc(String pid, String tid,String receipt)
10    {
11     //購買成功的邏輯處理
12    }
13    public override void OnSKPruchaseFailed(String pid, String tid,SKErrorType errorType, String error)
14    {
15     //購買失敗的邏輯處理
16    }
17    public override void OnSKValidateFailed(String pid)
18    {
19     //驗證失敗的邏輯處理
20    }

 

引擎官方網站:http://www.genesis-3d.com.cn/

官方論壇:http://bbs.9tech.cn/genesis-3d/

官方千人大群:59113309   135439306

YY頻道-遊戲開發大講堂(完全免費,定期開課):51735288

Genesis-3D開源遊戲引擎:遊戲起源,皆因有我!!!