0% found this document useful (0 votes)
10 views15 pages

Game Scene Configuration Script

Uploaded by

fajarpebefajar12
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views15 pages

Game Scene Configuration Script

Uploaded by

fajarpebefajar12
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd

=========================================================

========[Global Variable]
=========================================================

//konfigurasi screen game


var X_POSITION;
var Y_POSITION;
var layoutSize = {
'w':1280, 'h':720
}

//konfigurasi Attribut Player


var MoveSpeed = 300;

//Level Game
var LevelGame = 1;

// ==[Create By #EL►Razz]==

//============ Assets Configuration ===================

//Sound
var MusicMenu = "music_menu"
var MusicGame = "music_play"
var PlayerWalk = "snd_walk"
var PlayerJumps = "snd_jump"
var CollectCoin = "snd_coin"
var GameOver = "snd_gameover"
var Win = "snd_win"

//SceneMenu
var TitleGame = "title_game"
var BgMenu = "bg_menu"
var ButtonPlay = "button_play"
var TitleLose = "title_lose"
var TitleWin = "title_win"
var ButtonHome = "button_home"

//Game
var Player = "dino"
var PlayerJump = "dinoJump"
var xPlayer = 350;
var yPlayer = 700;
var xPlayer_First = 350;
var yPlayer_First = 700;
//Debug
// var xPlayer_First = 1900;
// var yPlayer_First = 700;

//Particle
var ParticleLose = "particle_lose"
var ParticleWin = "particle_win"
var TrailParticle = "particle";

//Obstacle
var Ground1 = "platform"
var Wall1 = "separator"
var MovePlat = "mv_platform"
var PlatMove;
var trap1 = "spike"
var Ground2 = "platform2"
var Ground3 = "platform3"
var Coin = "coin"

//Coin Couinter
var CoinInGame = 0;
var CoinLast = 0;

// FInish
var Gate = "gate"

=========================================================
========[Scene Menu - Create]
=========================================================

function create(){

//setup scene
// melakukan inisialisai pada variabel pembantu ==========================
X_POSITION =
{
'LEFT': 0,
'CENTER': [Link] / 2,
'RIGHT': [Link],
};

Y_POSITION =
{
'TOP': 0,
'CENTER': [Link] / 2,
'BOTTOM': [Link],

}
// menampung scene yang sedang
// aktif ke dalam variabel 'sceneMenu'
var Menu = this;

// == Menambahkan assets ==

//Sound

//backsound Menu
this.music_menu = [Link](MusicMenu);
this.music_menu.loop = true;
this.music_menu.play();

//set background
[Link] = [Link](X_POSITION.CENTER, Y_POSITION.CENTER, BgMenu);
[Link](1.5);

//set Title game


var titleGame = [Link](X_POSITION.CENTER, Y_POSITION.TOP + 250,
TitleGame);
//set Button Play
var buttonPlay = [Link](X_POSITION.CENTER, Y_POSITION.CENTER + 100,
ButtonPlay);
[Link](2);
[Link]();

//AddText
var MyCoin = [Link](X_POSITION.CENTER, Y_POSITION.BOTTOM - 100, "0",{
fontFamily: "Verdana, Arial",
fontSize: '18pt',
color: "#ffffff",
stroke: "#000000",
strokeThickness: 5,
})
[Link](0.5,0);
[Link]("Koin Kamu : " + CoinLast);

//[Code by #FPB]

//set animasi button Play


function repeatAnimBtnPlay(object){
[Link]({
targets: object,
ease: "Linear",
duration: 500,
yoyo: true,
scaleX: 2.2,
scaleY: 2.2,
repeat: 1,
onComplete: function(){
repeatAnimBtnPlay(object);
}
});
}
repeatAnimBtnPlay(buttonPlay);

//set pindah Layout


[Link]("gameobjectdown", function(pointer, gameobject){
if (gameobject == buttonPlay){
this.music_menu.pause()
[Link]("TAsceneBermain");
}
}, this);
}

=========================================================
========[Scene Bermain - Create]
=========================================================

function create(){
//setup scene

//Setup Sound
//background game
this.music_game = [Link](MusicGame);
this.music_game.loop = true;
this.music_game.play();
//sound playerDino
[Link] = [Link](PlayerWalk);
[Link] = [Link](CollectCoin);
[Link] = [Link](PlayerJumps);
[Link]();
[Link] = true;
// [Link](0);

var theCoin;
var hurt = false;
// melakukan inisialisai pada variabel pembantu ==========================
X_POSITION =
{
'LEFT': 0,
'CENTER': [Link] / 2,
'RIGHT': [Link],
};

Y_POSITION =
{
'TOP': 0,
'CENTER': [Link] / 2,
'BOTTOM': [Link],

//inisialisasi asset game ================================================


//set background
[Link] = [Link](X_POSITION.CENTER, Y_POSITION.CENTER, BgMenu);
[Link](3);

//Tutorial text
[Link] = [Link](X_POSITION.CENTER, Y_POSITION.CENTER + 150,"0", {
fontFamily : 'Verdana, Arial',
fontSize: '12pt',
color: "#ffffff",
stroke: "#000000",
strokeThickness: 5,
}).setScrollFactor(0);
[Link]("Tekan ← atau → untuk bergerak \n Tekan ↑ untuk
lompat");
[Link](0.5);
[Link](50)

//set Score Coin


[Link] = [Link](X_POSITION.CENTER,Y_POSITION.TOP + 150,"0", {
fontFamily : 'Verdana, Arial',
fontSize: '18pt',
color: "#ffffff",
stroke: "#000000",
strokeThickness: 5,
}).setScrollFactor(0);

[Link]("Coin : " + CoinInGame);


[Link](40);
[Link](0.5);
//setCamera
[Link](1.5);
// [Link](0.8);

//set playerDino
[Link] = [Link](xPlayer_First, yPlayer_First, Player);
[Link](0, 500);
[Link](30);
[Link](2);
[Link](8,16);
// [Link](0.2);
// [Link](true);\

//Coin Particle
[Link] = [Link](Coin);
[Link] = [Link]({
speed: {min:150, max: 250},
scale: {start:1, end:0},
opacity: {min:100, max:0},
gravity:{x:0, y:150},
quantity: {min:5, max:15},
lifespan: {min:200, max:800}
})
[Link](-100, -100);
[Link]();

//set Player Particle Move


[Link] = [Link](TrailParticle);
[Link] = [Link]({
x:0,
y:0,
angle:{min:0, max:45},
scale: {start:1, end:0},
opacity: {start:1, end:0},
blendMode: 'NORMAL',
lifespan: 400,
// gravityY: 600,
speedX:{min: -50, max: 10},
speedY:{min: -50, max: 10},
on: true,
follow: [Link],
});
[Link](10);
[Link](true);

//set Platform
//Static Plaforms
let groundTemp = [Link](0,0,Ground1).setVisible(false);
let groundSize = {'width':[Link], 'height':[Link]}
var platforms = [Link]();
[Link](20);

//Dynamic platforms
[Link] = [Link](550, 750, MovePlat);
[Link] = false;
[Link] = true;
//Traps platforms
let spikeTemp = [Link](450,700,trap1).setVisible(false);
let spikeSize = {"width":[Link], "height": [Link]}
let spikes = [Link]();
[Link](20);

//Gates
let gateTemp = [Link](1900,700,Gate).setVisible(false);
let gateSize = {"width":[Link], "height": [Link]}
let gates = [Link]();
[Link](10);

let checkTemp = [Link](0,0,Coin).setVisible(false);


let coinSize = {"width":[Link], "height": [Link]}
let coins = [Link]();
[Link](10);

//set platform
//Static Platform
//Fungsi membuat platform horizontal
function H_Platform(x,y, value, forward, assets){
for(let i = 0; i < value; i++){
if (forward){
[Link](x + [Link] * i, y + [Link],
assets);
} else {
[Link](x - [Link] * i, y + [Link],
assets);
}
}
}
//Fungsi membuat platform Vertical
function V_Platform(x,y, value, forward, assets){
for(let i = 0; i < value; i++){
if(forward){
[Link](x + [Link], y + [Link]* i,
assets);
} else {
[Link](x + [Link], y - [Link]* i,
assets);
}
}
}
//Fungsi membuat platform horizontal
function H_Spike(x,y, value, forward, assets){
for(let i = 0; i < value; i++){
if (forward){
[Link](x + [Link] * i, y + [Link],
assets);
} else {
[Link](x - [Link] * i, y + [Link],
assets);
}
}
}
//Fungsi membuat platform Vertical
function V_Spike(x,y, value, forward, assets){
for(let i = 0; i < value; i++){
if(forward){
[Link](x + [Link], y + [Link]* i,
assets);
} else {
[Link](x + [Link], y - [Link]* i,
assets);
}
}
}

//Setting Level
function level1(){
//Separator_Square
H_Platform(50, -50, 14, true, Wall1)
H_Platform(0, 750, 15, true, Wall1)

//Separator
V_Platform(-50, 0, 16, true, Wall1)

//Separator
V_Platform(350, 150, 13, true, Wall1)

//Separator
V_Platform(650, 0, 14, true, Wall1)

V_Platform(650, 750, 1, true, Wall1)

//Section1 - left
H_Platform(50, 700, 7, true, Ground1);
H_Platform(50, 650, 3, true, Ground1);
H_Platform(50, 600, 2, true, Ground1);
H_Platform(50, 400, 2, true, Ground1);
H_Platform(50, 200, 2, true, Ground1);

[Link](150, 650,Coin);
[Link](50, 400,Coin);
[Link](50, 200,Coin);

H_Platform(350, 500, 2, false, Ground1);


H_Platform(350, 300, 2, false, Ground1);
H_Platform(350, 100, 1, true, Ground1);

//CheckPoint
[Link](400, 100,Coin);

//Section2 - Middle
H_Platform(450, 100, 1, false, Ground1)
H_Platform(650, 100, 1, true, Ground1)

H_Platform(600, 200, 1, false, Ground1)


H_Platform(500, 200, 1, false, Ground1)
H_Spike(600, 215, 1, true, trap1);
H_Spike(500, 215, 1, true, trap1);

//coins
[Link](650, 100,Coin);

[Link](550, 300,Coin);

[Link](550, 300,Coin);

[Link](450, 400,Coin);
[Link](650, 400,Coin);

[Link](550, 450,Coin);

H_Platform(550, 300, 1, false, Ground1)

H_Platform(450, 400, 1, false, Ground1)


H_Platform(650, 400, 1, false, Ground1)

H_Platform(550, 500, 1, false, Ground1)


H_Spike(550, 515, 1, true, trap1);

H_Platform(600, 600, 2, true, Ground1)


H_Platform(450, 600, 2, true, Ground1)

[Link](600, 725,Coin);

//Trap
H_Spike(450, 765, 5, true, trap1);

//Section3 Lorong
H_Platform(750, 600, 26, true, Wall1);
V_Platform(650, 850, 2, true, Wall1);
H_Platform(750, 850, 26, true, Wall1);

//Coin
[Link](1050, 800,Coin);
[Link](1150, 800,Coin);
[Link](1250, 700,Coin);
[Link](1350, 750,Coin);
[Link](1550, 765,Coin);
[Link](1750, 750,Coin);

H_Platform(750, 750, 1, true, Ground1);


H_Platform(750, 800, 26, true, Ground1);

H_Platform(950, 650, 1, true, Wall1);


H_Platform(950, 750, 1, true, Wall1);

//Traps
H_Spike(1000, 815, 1, true, trap1);
H_Spike(1100, 815, 1, true, trap1);
H_Spike(1200, 815, 1, true, trap1);

H_Platform(1250, 700, 1, true, Wall1);


H_Platform(1250, 750, 1, true, Wall1);

H_Platform(1350, 750, 1, true, Ground2);


H_Platform(1550, 764, 1, true, Ground3);
H_Platform(1750, 750, 1, true, Ground2);
H_Spike(1300, 815, 11, true, trap1);

H_Platform(1850, 750, 1, true, Wall1);


H_Platform(1850, 650, 1, true, Wall1);
V_Platform(2000, 900, 6, false, Wall1);

[Link](2000 - [Link], 860 - [Link], Gate);


}

level1();

//Game Logic ========================================

var Game = this;

//Check Collition with moveable Platform


var CheckPlatCol = function(player, mvPlatforms){
PlatMove = true;
}
var PlayerHurt = function (player, spikes){
Restart();
}
var Win = function(player, gates){
Wins();
}
function Restart(){
Game.music_game.pause()
[Link]()
PlatMove = false;
[Link]("TAsceneGameOver");
}
function Wins(){
Game.music_game.pause()
[Link]()
PlatMove = false;
CoinLast += CoinInGame;
[Link]("TAsceneFinish");
}

//Collition Check
//set Collider Player dengan Platform
[Link]([Link], platforms, null, null);
[Link]([Link], [Link], CheckPlatCol, null);
[Link]([Link], spikes, PlayerHurt, null);
[Link]([Link], coins, function(player, coin){
[Link]();
CoinInGame +=1;
[Link]()
[Link]([Link].x, [Link].y);
[Link]();
[Link](false);
}, null);
[Link]([Link], gates, Win, null);

//MovePlayer dengan ditekan


[Link] = [Link]();
//!!!code untuk menjalankannya ada di update script
//Restart Scene Game
[Link]('keydown-R',function(input){
[Link]()
Game.music_game.pause()
[Link]();
},this)

//Back to scene Menu


[Link]('keydown-ESC',function(input){
[Link]()
[Link]("TAsceneMenu");
},this)
//Refresh Page
[Link]('keydown-N',function(input){
[Link]();
},this)

//Player Animation========================================
//Animasi Player Ketika Klik arrow Kanan
[Link]({
key: 'right',
frames: [Link](Player, {start: 1 , end: 6 }),
frameRate: 12,
repeat: -1
});
//Animasi Player Ketika Klik arrow Kiri
[Link]({
key: 'left',
frames: [Link](Player, {start: 1 , end: 6 }),
frameRate: 12,
repeat: -1
});
//Animasi Player Ketika Klik arrow Kiri
[Link]({
key: 'front',
frames: [{key: Player, frames:0}],
frameRate: 12,
});
//Animasi Player Ketika Klik arrow Kiri
[Link]({
key: 'jump',
frames: [{key: PlayerJump, frames:0}],
frameRate: 12,
});

=========================================================
========[Scene Bermain - Update]
=========================================================

function update(){
//For debugger body player
xPlayer = [Link].x;
yPlayer = [Link].y;
//FollowPlayer
[Link](xPlayer, yPlayer, 1, 'Linear');

//set Coin
[Link]("Coin : " + CoinInGame);

//MovementPlatform
let moveRight = false;

//MovePlayer dengan tekan keyboard


if([Link]){
//Move ketika klik arrow kanan
[Link](MoveSpeed);

//set Animasi Player Ketika Klik Arrow Kanan


[Link]('right', true);

//Flip Player
[Link] = false;

//debugMovement
[Link]();
[Link]({x: xPlayer, y: yPlayer});

[Link](true);

[Link](1);

} else if([Link]){
//Move ketika klik arrow kiri
[Link](-[Link](MoveSpeed));

//set Animasi Player Ketika Klik Arrow kiri


[Link]('left', true);

//Flip Player
[Link] = true;

//debugMovement
[Link]();
[Link]({x: xPlayer, y: yPlayer});

[Link](true);

[Link](1);

}else {
//Ketika tidak klik apapun
[Link](0);

//set Animasi Player Ketika tidak klik apapun


[Link]('front', true);

[Link](0);
//Flip Player
// [Link] = false;
//hide Particle
// [Link](false);
}

//MoveJump dengan keyboard


if([Link] && [Link]){
//MoveJump ketika klik arrow atas
[Link](-450);

[Link]();
}

//Cek ketika player melayang


if (![Link]){
//set Animasi ketika melayang
[Link]('jump', true);
//hide Particle
[Link](true);

[Link](0);
}

//Moving Platform
if (PlatMove){
[Link](100);
}

if ([Link].x >= 625){


PlatMove = false;
[Link](0);
}
}

=========================================================
========[Scene GameOver - Create]
=========================================================

function create(){

X_POSITION =
{
'LEFT': 0,
'CENTER': [Link] / 2,
'RIGHT': [Link],
};

Y_POSITION =
{
'TOP': 0,
'CENTER': [Link] / 2,
'BOTTOM': [Link],

this.snd_gameover = [Link](GameOver)
this.snd_gameover.play()

var Games = this;


//Background
[Link] = [Link](X_POSITION.CENTER, Y_POSITION.CENTER, BgMenu);
[Link](2);
[Link](" 0xff8c8c");

//set Text Kalah


[Link] = [Link](X_POSITION.CENTER, Y_POSITION.TOP + 200,
TitleLose)

//button Home
var buttonHome = [Link](X_POSITION.CENTER, Y_POSITION.CENTER,
ButtonHome)
[Link]();

[Link]("gameobjectdown", function(pointer, gameobject){


if (gameobject == buttonHome){
// [Link](Games)
CoinInGame = 0;
[Link]("TAsceneMenu")
}
},this);

//Lose Particle
[Link] = [Link](ParticleLose);
[Link] = [Link]({
speed: {min:150, max: 2000},
scale: {start:0.1, end:0.2},
gravityY: 500,
quantity: 50,
lifespan: 5000
})
[Link](X_POSITION.CENTER, Y_POSITION.CENTER);
[Link]();

//set animasi button Play


function repeatAnimBtnPlay(object){
[Link]({
targets: object,
ease: "Linear",
duration: 500,
yoyo: true,
scaleX: 1.2,
scaleY: 1.2,
repeat: 1,
onComplete: function(){
repeatAnimBtnPlay(object);
}
});
}
repeatAnimBtnPlay([Link]);
}

=========================================================
========[Scene Finish]
=========================================================
function create(){

X_POSITION =
{
'LEFT': 0,
'CENTER': [Link] / 2,
'RIGHT': [Link],
};

Y_POSITION =
{
'TOP': 0,
'CENTER': [Link] / 2,
'BOTTOM': [Link],

this.snd_Win = [Link](Win)
this.snd_Win.play()

var Games = this;


//Background
[Link] = [Link](X_POSITION.CENTER, Y_POSITION.CENTER, BgMenu);
[Link](2);
[Link]("0x8cffad");

//set Text Kalah


[Link] = [Link](X_POSITION.CENTER, Y_POSITION.TOP + 200,
TitleWin)

//button Home
var buttonHome = [Link](X_POSITION.CENTER, Y_POSITION.CENTER,
ButtonHome)
[Link]();

[Link]("gameobjectdown", function(pointer, gameobject){


if (gameobject == buttonHome){
// [Link](Games)
CoinInGame = 0;
[Link]("TAsceneMenu")
}
},this);

//Win Particle
[Link] = [Link](ParticleWin);
[Link] = [Link]({
speed: {min:150, max: 2000},
scale: {start:0.1, end:1.3},
gravityY: 500,
quantity: 50,
lifespan: 5000
})
[Link](X_POSITION.CENTER, Y_POSITION.CENTER);
[Link]();

//set animasi button Play


function repeatAnimBtnPlay(object){
[Link]({
targets: object,
ease: "Linear",
duration: 500,
yoyo: true,
scaleX: 1.2,
scaleY: 1.2,
repeat: 1,
onComplete: function(){
repeatAnimBtnPlay(object);
}
});
}
repeatAnimBtnPlay([Link]);
}

You might also like