feat: 50 игр на Lua + импорт Roblox для всех + поддержка Lua в плеере #39
@ -3892,7 +3892,7 @@ game.self.onTouch(() => {
|
||||
|
||||
<h3 className="lessonH">Шаг 2. Главный скрипт</h3>
|
||||
<ScriptKind kind="global" />
|
||||
<Code>{`// === ИГРА «ПРИЗРАЧНЫЕ СТЕНЫ» — главный скрипт ===
|
||||
<CodeBoth game="ghost-walls" script="g28_main">{`// === ИГРА «ПРИЗРАЧНЫЕ СТЕНЫ» — главный скрипт ===
|
||||
|
||||
game.ui.showText('Кликай по фиолетовым стенам — пройди сквозь!', 4);
|
||||
|
||||
@ -3904,7 +3904,7 @@ game.onMessage('win', () => {
|
||||
const p = game.player.position;
|
||||
game.scene.spawnParticles('confetti',
|
||||
{ x: p.x, y: p.y + 3, z: p.z }, { duration: 3, count: 3 });
|
||||
});`}</Code>
|
||||
});`}</CodeBoth>
|
||||
<p>
|
||||
Главный скрипт только обрабатывает победу — он ловит
|
||||
сообщение <code>'win'</code> от финиша через
|
||||
@ -3915,7 +3915,7 @@ game.onMessage('win', () => {
|
||||
<h3 className="lessonH">Шаг 3. Скрипт призрачной стены</h3>
|
||||
<p>Этот скрипт вешается на <b>каждую</b> стену.</p>
|
||||
<ScriptKind kind="object" on="каждую стену" />
|
||||
<Code>{`// === Скрипт призрачной стены ===
|
||||
<CodeBoth game="ghost-walls" script="g28_wall_1">{`// === Скрипт призрачной стены ===
|
||||
|
||||
let ghost = false;
|
||||
game.self.onClick(() => {
|
||||
@ -3926,7 +3926,7 @@ game.self.onClick(() => {
|
||||
game.scene.setOpacity(game.self.ref, 0.25);
|
||||
game.sound.play('click');
|
||||
game.ui.showText('Стена стала призрачной!', 1.5);
|
||||
});`}</Code>
|
||||
});`}</CodeBoth>
|
||||
<p>Разберём:</p>
|
||||
<ul>
|
||||
<li><code>game.self.onClick(fn)</code> — функция внутри
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user