👏

【Roblox】広告ポータルを配置するときにする事

2024/08/17に公開

はじめに

Robloxにおける広告ポータルの配置方法について解説します。

正直今までRobloxで遊んできましたがまだ一度も表示されてるところを見たことがありません(笑)

公式Reference

https://create.roblox.com/docs/ja-jp/production/monetization/immersive-ads

実装

オブジェクトの配置

広告を表示する領域として、8スタッド×4.5スタッド以上の大きさ、32スタッド×18スタッド以下の大きさのPartを配置します。このPartの子オブジェクトとしてAdGuiを配置します。

  • 補足: AdGuiはRobloxが提供する広告表示用のGUIです。このオブジェクト内に広告が表示されます

コード

local Players = game:GetService("Players")
local PolicyService = game:GetService("PolicyService")
local Workspace = game:GetService("Workspace")

local player = Players.LocalPlayer

local mainPortal = Workspace:WaitForChild("AdPortal")

-- ユーザーのポリシー情報を取得
local success, result = pcall(PolicyService.GetPolicyInfoForPlayerAsync, PolicyService, player)
if success and result then
	if not result.AreAdsAllowed then
		print("Destroy Portal")
		mainPortal:Destroy()
	end
else
    print("プレイヤー", player.Name, "のポリシー取得に失敗しました。", result)
end
  • レイヤーとサービスの取得: Players, PolicyService, Workspaceサービスを取得し、ローカルプレイヤーを取得します。
  • 広告ポータルの取得: Workspaceから"AdPortal"という名前のPartを取得します。
  • ユーザーの広告表示ポリシー取得: PolicyService.GetPolicyInfoForPlayerAsync関数を使用して、現在のプレイヤーが広告表示を許可しているか確認します。
  • 広告表示の許可判定: 取得した結果に基づいて、広告表示が許可されていない場合は広告ポータルを削除します。

実行

https://youtu.be/Eiv3IRXp2S4

まとめ

本記事では、Robloxにおける広告ポータルの配置方法について解説しました。広告を表示する前に、必ずユーザーの広告表示ポリシーを確認し、許可されている場合にのみ広告を表示するように実装する必要があります。

Landelテックブログ

Discussion