大亨脚本
Coddy Roblox 游戏:工厂大亨 课程的第 1 课,共 22 课。
在这门课程中,你将制作一款大亨游戏,这是 Roblox 中最受欢迎的游戏类型之一。机器会掉落矿石,传送带会把矿石送到收集器,收集器会支付 Cash,而 Cash 可以用来购买更多机器。课程结束时,你将拥有一座完整的工厂,其中包含升级、重生和存档功能。
整个工厂由 ServerScriptService 中名为 Tycoon 的一个 Script 控制。用于平衡游戏的数值(例如矿石的价值、掉落频率)存放在 ModuleScript ReplicatedStorage.Settings 中,require 会把它返回的表交给你:
local Settings = require(game.ReplicatedStorage.Settings)
print("A drop every " .. Settings.DropInterval .. " second") --> 每 1 秒掉落一个平衡大亨游戏需要一次又一次地调整这些数值,所以它们都存放在同一个地方。
Cash 和其他统计数据一样,会显示在排行榜上:玩家中有一个名为 leaderstats 的 Folder,其中存放着一个值:
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats"
leaderstats.Parent = player
local gems = Instance.new("IntValue")
gems.Name = "Gems"
gems.Parent = leaderstats挑战
简单在 ServerScriptService 中启动工厂的 Script:Tycoon。
- 加载设置:
local Settings = require(game.ReplicatedStorage.Settings)。 - 打印
"Ore is worth " .. Settings.OreValue .. " Cash"。 - 玩家加入时,为他们创建一个
leaderstats文件夹,其中包含一个名为Cash的 IntValue。
按下 Play:Output 中会显示 Ore is worth 10 Cash,Cash 也会显示在排行榜上。然后按下 Check。
亲手试试
-- Tycoon:运行你整个工厂的 Script。
local Players = game:GetService("Players")
-- 1. 加载设置:用 require 加载 ModuleScript
-- game.ReplicatedStorage.Settings
-- 2. 使用 Settings.OreValue 输出一块矿石的价值
-- 3. 给排行榜上的每位玩家添加一个 Cash 值
-- (一个名为 leaderstats 的 Folder,里面有一个名为 Cash 的 IntValue)
Roblox 游戏:工厂大亨中的所有课
自己练习: Roblox 在线编辑器