MultiChestは、FiveMでプレイヤーに安全なチェストシステムを提供するために設計されたスクリプトです。銀行に貴重なアイテムを保管したり、特定の場所をカスタマイズしたりすることで、このツールはプレイヤーの所有物の直感的かつ安全な管理を可能にし、RP体験を豊かにします。
FiveM Escrowによって保護されているMultiChestは、config.lua
ファイルを通じて非常に詳細な設定を提供します。マーカー、通知、Webhookなどをカスタマイズでき、ソースコードのセキュリティを維持しながら利用できます。🚀
MultiChestが正しく動作するためには、以下のリソースがサーバーにインストールされていることを確認してください:
▪️ es_extended
▪️ ox_lib
▪️ ox_inventory
▪️ oxmysql
CREATE TABLE IF NOT EXISTS `user_chest` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`owner` varchar(50) NOT NULL,
`name` varchar(50) NOT NULL,
`name_chest` varchar(100) NOT NULL,
`name_bank` varchar(100) NOT NULL,
`weight` int(11) NOT NULL,
`password` varchar(100) NOT NULL,
PRIMARY KEY (`id`),
INDEX `owner_index` (`owner`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
プログラム起動時に、MultiChestは必要なデータベースを自動的に作成します。
ℹ️ 情報:
▪️ id: チェストの識別子で、新しいエントリごとに自動的に増加します。
▪️ owner: チェストの所有者の識別子。
▪️ name: プレイヤーが選択したチェストの種類に対応。
▪️ name_chest: プレイヤーが付けたカスタム名に対応。
▪️ name_bank: チェストが関連付けられている銀行を示します。
▪️ weight: チェストの運搬能力を表します。
▪️ password: プレイヤーが選んだパスワードに対応。
このモジュールは、Config.CoffreLocations
で定義された設定に基づいて、チェストのインタラクションポイントを構成します。ビジュアルマーカーやマップ上の指標(ブリップ)の表示を管理し、プレイヤーが近づいたときのインタラクションも処理します。
🔧 詳細:
▪️ Config.CoffreLocations
で定義された各位置に対して、カスタマイズ可能なブリップ(アイコン、サイズ、色、ラベル)がマップに追加されます。
▪️ Config.Marker
で指定されたパラメータ(タイプ、色、サイズ、回転など)に従ってビジュアルマーカーが表示されます。
▪️ インタラクティブゾーンがプレイヤーの存在を検知し、[E]キーによるインタラクションを可能にします。
この設定は、ゲーム内でチェストを見つけ、操作するための没入感のあるスムーズな体験を提供します。➡️
このモジュールは、プレイヤーがインタラクションポイントに近づいているかどうかに応じて、既存のチェストにアクセスするか、新しいチェストをレンタルするかを選択できるコンテキストメニューを表示します。
🔧 詳細:
▪️ スクリプトは、プレイヤーの座標とConfig.CoffreLocations
で定義された座標を比較して、最も近い銀行を特定します。
▪️ その後、プレイヤーがその銀行にすでにチェストを持っているかどうかを確認します。
▫️ 持っている場合、チェストにアクセスするオプションが提供されます。
▫️ 持っていない場合、レンタルオプションのみが表示されます。
▪️ 利用可能なアクションを提供するインタラクティブなコンテキストメニューが表示されます。
この機能は、プレイヤーの位置に適応した直感的なインターフェースを提供し、チェストの管理をサポートします。🔓
このモジュールは、現在の銀行で利用可能なオプションからチェストを選択し、名前とパスワードを設定するための入力インターフェースを使用して、プレイヤーがチェストをレンタルできるようにします。
🔧 詳細:
▪️ Config.Coffres
から、プレイヤーがいる銀行に対応するチェストのみをフィルタリングし、名前、価格、税金(重量に基づく)、最大重量、スロット数を表示します。
▪️ レンタル前にチェストの名前とパスワードを収集するダイアログボックスが表示されます。
▪️ レンタルを確定するために、情報をサーバーに送信するイベントが起動します。
▪️ 利用可能なチェストがない場合、メニューにエラーメッセージが表示されます。
この明確で効率的なインターフェースは、各銀行のチェストレンタルニーズに対応します。🛒
このモジュールは、対応する銀行でプレイヤーがレンタルしたすべてのチェストのリストを表示し、開く、名前変更、パスワード変更、削除のオプションを提供します。
🔧 詳細:
▪️ プレイヤーがチェストを持っていない場合、エラー通知が表示されます。
▪️ プレイヤーの位置に基づいて現在の銀行が特定されます。
▪️ コンテキストメニューには、各チェストの名前(未定義の場合はデフォルト名)がリストされます。
▪️ 各チェストに対して、サブメニューで以下のオプションが提供されます:パスワードで開く、パスワード変更、名前変更、削除。
この包括的な管理は、プレイヤーのチェストを追跡し管理するためのリッチで安全なインターフェースを提供します。📦
このモジュールは、OX_Inventoryを利用して特定のチェストのインベントリを開き、その中のアイテムを表示および管理できるようにします。
🔧 詳細:
▪️ 選択したチェストはOX_Inventory経由で取得され、プレイヤーがその内容に直接アクセスできます。
この機能は、チェストのインベントリ管理をスムーズかつ統合的に行い、ユーザー体験を最適化します。📋
Config.Marker = {
id_type = 27,
size_x = 0.3,
size_y = 0.3,
size_z = 0.3,
color_red = 0,
color_green = 150,
color_blue = 150,
color_opacity = 100,
rotate = true,
}
このセクションでは、ゲーム内でチェストの位置を示すビジュアルマーカーをカスタマイズできます。これらはプレイヤーのインタラクションポイントとして機能します。
🔧 利用可能なオプション:
▪️ id_type: マーカーのタイプ(FiveMドキュメントのIDを参照)。
▪️ size_x, size_y, size_z: マーカーの寸法(長さ、幅、高さ)。
▪️ color_red, color_green, color_blue: RGBカラー(0-255)。
▪️ color_opacity: 不透明度(0-255)。
▪️ rotate: 回転の有効/無効(true/false)。
サーバーに完璧にフィットするようにマーカーを調整してください!🎯
Config.Blips = {
activ_blips = true,
icon = 272,
display = 4,
scale = 0.7,
color = 2,
activ_text_on_blip_bank_name = false,
txt_blip_intro_bank_name = "[チェスト]",
txt_blip_intro_simple = "[チェスト]",
}
ブリップは、マップ上にチェストの位置を示すアイコンです。このセクションでは、好みに応じて設定できます。
🔧 利用可能なオプション:
▪️ activ_blips: ブリップの有効/無効(true/false)。
▪️ icon: アイコンのID(FiveMドキュメントを参照)。
▪️ display: 表示タイプ(4 = マップ + ミニマップ)。
▪️ scale: ブリップのサイズ。
▪️ color: 色(FiveMドキュメントを参照)。
▪️ activ_text_on_blip_bank_name: 銀行名を表示。
▪️ txt_blip_intro_bank_name, txt_blip_intro_simple: ブリップのテキスト。
プレイヤーを効果的に導くためにブリップをカスタマイズしてください!🗺️
Config.Notifications = {
position_error = "center-left",
duration_error = 5000,
position_success = "center-left",
duration_success = 5000,
position_warning = "center-left",
duration_warning = 5000,
}
通知は、チェストに関連するアクションやエラーについてプレイヤーに知らせます。位置と持続時間を調整して、より良い体験を提供してください。
🔧 利用可能なオプション:
▪️ position_error, position_success, position_warning: 画面上の位置。
▪️ duration_error, duration_success, duration_warning: 持続時間(ミリ秒)。
メッセージが明確で適切な位置に表示されるようにしてください!📢
Config.Webhook = {
webhook_use_only_one_logo = false,
webhook_logo_defaut = "https://www.heickotv.xyz/multichest/multichest.png",
webhook_logo_fleeca_bank = "https://www.heickotv.xyz/multichest/fleeca_bank.png",
webhook_logs_activation = true,
webhook_link_log = "https://discord.com/api/webhooks/...",
txt_log_title_for_buy = "チェストのレンタル",
txt_log_for_buy = "がレンタルしました",
color_code_for_buy = 65280,
}
Webhookは、チェストに関連するアクション(購入、変更、削除)のログをDiscordに送信します。
🔧 利用可能なオプション:
▪️ webhook_use_only_one_logo: 単一のロゴを使用するか、銀行ごとに異なるロゴを使用するか。
▪️ webhook_logo_defaut, webhook_logo_fleeca_bank など: ロゴのURL。
▪️ webhook_logs_activation: ログを有効化。
▪️ webhook_link_log: DiscordのWebhook URL。
▪️ txt_log_title_for_buy など: ログのタイトルとテキスト。
▪️ color_code_for_buy など: エンベッドの色。
Discordでアクティビティを監視してください!🔗
Config.Text = {
txt_button = "[E] - のチェストを管理",
txt_first_head_menu = "チェスト管理 -",
txt_my_chest = "📦 私のチェスト -",
txt_access_chest = "📦 私のチェストにアクセス",
-- (完全なリストはconfig.luaに記載)
}
インターフェースや通知に表示されるすべてのテキストをカスタマイズして、完全に没入感のある体験を提供してください。
🔧 利用可能なオプション:
▪️ txt_button: インタラクションボタンのテキスト。
▪️ txt_first_head_menu: メニューのヘッダー。
▪️ txt_my_chest: 個人チェストのラベル。
コミュニティに合わせて言語を調整してください!📝
Config.Limit = {
chest_limit_per_player = 15,
}
プレイヤーが所有できるチェストの数に制限を設定します。
🔧 利用可能なオプション:
▪️ chest_limit_per_player: 最大チェスト数。
経済とゲームプレイのバランスを取ってください!⚖️
Config.CoffreLocations = {
{ coords = vector3(251.24, 220.82, 106.35),
bank_type = "FleecaBank",
bank_name = "Pacific Bank - Vinewood Blvd." },
-- (完全なリストはconfig.luaに記載)
}
プレイヤーがチェストとインタラクションできる位置を追加します。
🔧 利用可能なオプション:
▪️ coords: 座標(x, y, z)。
▪️ bank_type: 銀行のタイプ(FleecaBank、Mazebank、またはSavingBank)。
▪️ bank_name: 銀行名。
好きな場所にチェストを配置してください!📍
Config.Coffres = {
{ name = "小型チェスト",
weight = 50000,
price = 1000,
nb_slot = 10,
bank_name = "Pacific Bank - Vinewood Blvd." },
-- (完全なリストはconfig.luaに記載)
}
レンタル可能なチェストの種類を定義します。
🔧 利用可能なオプション:
▪️ name: チェストの名前。
▪️ weight: 容量(グラム単位)。
▪️ price: レンタル価格。
▪️ nb_slot: スロットの数。
▪️ bank_name: 関連する銀行。
プレイヤーに多様なチェストを提供してください!🎁
Config.Taxes = {
enable = true,
percent = 2.0,
nb_hour_between_two_samples = 6,
}
レンタルしたチェストに税金システムを追加します。
🔧 利用可能なオプション:
▪️ enable: 税金の有効/無効。
▪️ percent: 税金の割合。
▪️ nb_hour_between_two_samples: 徴収間隔(時間単位)。
現実的な経済をシミュレートしてください!💸