0.8.0: tutorial — miner and factory operator scenes, auctions, drills need a concession
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
f5f8fcc367
commit
71406c6df6
@@ -240,6 +240,9 @@ function landScene(scene, util) {
|
||||
scene.overlay.showOutline(PonderPalette.RED, 'ore', util.select.position(2, 1, 2), 150)
|
||||
say(scene, 70, 'Руду копають лише з концесією', [2.5, 1.5, 2.5], PonderPalette.RED, true)
|
||||
say(scene, 70, 'Купи її в терміналі: Земля → Купити концесію', [2.5, 1.5, 2.5])
|
||||
say(scene, 70, 'Бури Create теж копають лише за концесією', [2.5, 1.5, 2.5])
|
||||
say(scene, 70, 'Найкращі ділянки держава продає на аукціоні', [2.5, 2.5, 2.5], PonderPalette.BLUE, true)
|
||||
say(scene, 70, 'Ставки — в терміналі: Земля → Аукціони', [2.5, 2.5, 2.5])
|
||||
say(scene, 80, 'За землю платиш щодня. Не платив 3 дні — ділянку забирають', [2.5, 2.5, 2.5])
|
||||
}
|
||||
|
||||
@@ -336,6 +339,69 @@ function roadsScene(scene, util) {
|
||||
say(scene, 80, 'Покриття: кам\'яна цегла, гладкий камінь, андезит, плитка Create', [2.5, 1.5, 2.5])
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------------------------
|
||||
// 10. Шахтар
|
||||
|
||||
function minerScene(scene, util) {
|
||||
scene.showBasePlate()
|
||||
scene.world.setBlocks([1, 1, 1, 3, 2, 3], 'minecraft:stone')
|
||||
scene.world.setBlocks([2, 1, 1], 'minecraft:iron_ore')
|
||||
scene.world.setBlocks([1, 2, 1], 'minecraft:coal_ore')
|
||||
scene.world.setBlocks([3, 1, 1], 'minecraft:copper_ore')
|
||||
scene.world.setBlocks([2, 2, 1], 'minecraft:stone')
|
||||
scene.idle(10)
|
||||
scene.world.showSection([1, 1, 1, 3, 2, 3], Direction.DOWN)
|
||||
scene.idle(15)
|
||||
|
||||
say(scene, 70, 'Це державна шахта', [2.5, 2.5, 1], PonderPalette.BLUE, true)
|
||||
say(scene, 70, 'Копати тут можуть лише шахтарі', [2.5, 2.5, 1], PonderPalette.RED)
|
||||
say(scene, 70, 'Найнятися: бригадир шахти або термінал → Робота', [2.5, 2.5, 1])
|
||||
|
||||
scene.showControls(40, [2.5, 1.5, 1], 'right').leftClick().withItem('minecraft:iron_pickaxe')
|
||||
scene.idle(30)
|
||||
scene.world.destroyBlock([2, 1, 1])
|
||||
scene.idle(15)
|
||||
say(scene, 70, 'Руда одразу йде державі — без дропу', [2.5, 1.5, 1], null, true)
|
||||
scene.world.createItemEntity([2.5, 2, 0.8], [0, 0.2, 0], 'numismatics:spur')
|
||||
say(scene, 70, 'Тобі — оплата за кожен блок', [2.5, 1.5, 1], PonderPalette.GREEN)
|
||||
say(scene, 70, 'Алмази й золото дорожчі за вугілля', [2.5, 1.5, 1])
|
||||
say(scene, 70, 'Гроші — в кінці ігрового дня, до 200 блоків на день', [2.5, 2.5, 2])
|
||||
|
||||
scene.world.setBlocks([2, 1, 1], 'minecraft:iron_ore')
|
||||
scene.idle(10)
|
||||
say(scene, 70, 'Викопана руда згодом виростає знову', [2.5, 1.5, 1], PonderPalette.BLUE, true)
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------------------------
|
||||
// 11. Оператор заводу
|
||||
|
||||
function operatorScene(scene, util) {
|
||||
scene.showBasePlate()
|
||||
scene.world.setBlocks([1, 1, 2], 'minecraft:blast_furnace')
|
||||
scene.world.setBlocks([2, 1, 2], 'create:andesite_casing')
|
||||
scene.world.setBlocks([3, 1, 2], 'create:mechanical_press')
|
||||
scene.idle(10)
|
||||
scene.world.showSection([1, 1, 2, 3, 1, 2], Direction.DOWN)
|
||||
scene.idle(15)
|
||||
|
||||
say(scene, 70, 'Це державний завод', [2.5, 2.5, 2.5], PonderPalette.BLUE, true)
|
||||
say(scene, 70, 'Оператор стежить, щоб він не зупинявся', [2.5, 2.5, 2.5])
|
||||
say(scene, 70, 'Найнятися: майстер заводу або термінал → Робота', [2.5, 2.5, 2.5])
|
||||
|
||||
scene.overlay.showOutline(PonderPalette.RED, 'broken', util.select.position(1, 1, 2), 220)
|
||||
say(scene, 70, 'Точка задиміла — щось зламалось', [1.5, 2, 2.5], PonderPalette.RED, true)
|
||||
scene.showControls(50, [1.5, 2, 2.5], 'down').rightClick().withItem('minecraft:coal')
|
||||
say(scene, 70, 'Немає палива — клацни з вугіллям у руці', [1.5, 2, 2.5])
|
||||
scene.showControls(50, [1.5, 2, 2.5], 'down').rightClick()
|
||||
say(scene, 70, 'Затор — прочисть порожньою рукою', [1.5, 2, 2.5])
|
||||
scene.showControls(50, [1.5, 2, 2.5], 'down').rightClick().withItem('create:wrench')
|
||||
say(scene, 70, 'Розхиталась деталь — підтягни ключем', [1.5, 2, 2.5])
|
||||
|
||||
scene.world.createItemEntity([1.5, 2.2, 2.5], [0, 0.2, 0], 'numismatics:spur')
|
||||
say(scene, 70, 'Кожен ремонт — 2 ¤ у кінці ігрового дня', [2.5, 2.5, 2.5], PonderPalette.GREEN, true)
|
||||
say(scene, 70, 'Поломки стаються, лише поки ти на зміні поруч', [2.5, 2.5, 2.5])
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------------------------
|
||||
// 7. Продаж енергії державі: державна підстанція
|
||||
|
||||
@@ -381,7 +447,7 @@ function energyScene(scene, util) {
|
||||
scene.idle(12)
|
||||
}
|
||||
say(scene, 70, 'Щохвилини держава платить твоєму бізнесу', [2.5, 2.5, 2.5], PonderPalette.GREEN, true)
|
||||
say(scene, 70, 'Платить за силу, яку забирає підстанція', [2.5, 2.5, 2.5])
|
||||
say(scene, 70, 'Платить лише за силу, яку забирають її машини', [2.5, 2.5, 2.5])
|
||||
say(scene, 70, 'Приклад: 2048 SU — приблизно 1 ¤ за хвилину', [2.5, 2.5, 2.5], PonderPalette.BLUE)
|
||||
|
||||
setSpeed(scene, ALL, 0)
|
||||
@@ -411,6 +477,8 @@ Ponder.registry(event => {
|
||||
.scene('guide_jobs', 'Робота: ринок праці й пошта', jobsScene)
|
||||
.scene('guide_cargo', 'Робота: вантажник', cargoScene)
|
||||
.scene('guide_roads', 'Робота: дорожник', roadsScene)
|
||||
.scene('guide_miner', 'Робота: шахтар', minerScene)
|
||||
.scene('guide_operator', 'Робота: оператор заводу', operatorScene)
|
||||
|
||||
event.create('create:package_frogport')
|
||||
.scene('frogport_sell', 'Create RP: продаж державі', FROG_STRUCTURE, sellScene)
|
||||
|
||||
Reference in New Issue
Block a user