Monday, 29 March 2021

【GAMEMAKER】Card battle

 Information about object: obj_setup

Sprite:
Solid: false
Visible: true
Depth: 0
Persistent: false
Parent:
Children:
Mask:
No Physics Object
Create Event:
execute code:

///set up

//create list and populate
global.cards=ds_list_create();
for (var loop = 0; loop < 20; loop += 1)
{
global.card[0,loop]=loop;//id - used for sprite
global.card[1,loop]=irandom_range(1,10);//set strength
global.card[2,loop]=irandom_range(1,10);//set speed
global.card[3,loop]=irandom_range(1,10);//set magic
global.card[4,loop]=irandom_range(1,10);//set gold   
ds_list_add(global.cards,loop);//set up deck 
}
ds_list_shuffle(global.cards);
//create player's hand
global.player_hand=ds_list_create();
repeat (10)
{
ds_list_add(global.player_hand,global.cards[|0]);
show_debug_message(global.cards[|0]);
ds_list_delete(global.cards,0);
}

//create enemy's hand
global.enemy_hand=ds_list_create();
repeat (10)
{
ds_list_add(global.enemy_hand,global.cards[|0]);
show_debug_message(global.cards[|0]);
ds_list_delete(global.cards,0);
}

global.game_round=0;
global.can_show=false;
global.player=0;
global.enemy=0;
global.draw=0;
room_goto(room_game);

Information about object: obj_play
Sprite:
Solid: false
Visible: true
Depth: 0
Persistent: false
Parent:
Children:
Mask:
No Physics Object
Create Event:
execute code:

///set starting message
message="Press 1 To Play Stength - 2 For Speed - 3 For Magic - 4 For Gold";

Alarm Event for alarm 0:
execute code:

/// alarm:
global.can_show=false;
message="Press 1 To Play Stength - 2 For Speed - 3 For Magic - 4 For Gold";
global.game_round++;
if global.game_round==10 room_goto(room_game_over);
Step Event:
execute code:

///compare plays
player=global.player_hand[|global.game_round];
enemy=global.enemy_hand[|global.game_round];

//play 1 
if keyboard_check_pressed(ord('1')) && alarm[0]==-1
{
scr_check_play(global.card[1,player],global.card[1,enemy]);
}

//play 2
if keyboard_check_pressed(ord('2')) && alarm[0]==-1
{
scr_check_play(global.card[2,player],global.card[2,enemy]);
}

//play 3
if keyboard_check_pressed(ord('3')) && alarm[0]==-1
{
scr_check_play(global.card[3,player],global.card[3,enemy]);
}


//play 4
if keyboard_check_pressed(ord('4')) && alarm[0]==-1
{
scr_check_play(global.card[4,player],global.card[4,enemy]);
}
Draw Event:
execute code:

///draw score and message
draw_text(500,10,"Player "+string(global.player)+" Enemy "+string(global.enemy)+" Draws "+string(global.draw));
draw_text(500,20,message);
draw_text(80,10, "Round "+string(global.game_round+1)+" Of 10");

execute code:

///draw cards

//draw player

//draw card bg
draw_set_colour(c_teal);
draw_roundrect(40,40,260,500,false);

//draw a border
draw_set_colour(c_white);
draw_roundrect(42,42,258,498,true);

//draw main card
draw_sprite(spr_characters,player,150,150);

//draw stats
draw_set_halign(fa_center);
draw_set_colour(c_black);
draw_text(150,300,"Strength: "+string(global.card[1,player]));
draw_text(150,350,"Speed: "+string(global.card[2,player]));
draw_text(150,400,"Magic: "+string(global.card[3,player]));
draw_text(150,450,"Gold: "+string(global.card[4,player]));

//draw enemy
if global.can_show
{
//draw card bg
draw_set_colour(c_green);
draw_roundrect(340,40,560,500,false);

//draw a border
draw_set_colour(c_white);
draw_roundrect(342,42,558,498,true);

//draw main card
draw_sprite(spr_characters,enemy,450,150);

//draw stats
draw_set_halign(fa_center);
draw_set_colour(c_black);
draw_text(450,300,"Strength: "+string(global.card[1,enemy]));
draw_text(450,350,"Speed: "+string(global.card[2,enemy]));
draw_text(450,400,"Magic: "+string(global.card[3,enemy]));
draw_text(450,450,"Gold: "+string(global.card[4,enemy]));
}

Information about object: obj_game_over
Sprite:
Solid: false
Visible: true
Depth: 0
Persistent: false
Parent:
Children:
Mask:
No Physics Object
Draw Event:
execute code:

draw_text(400,200,"Player "+string(global.player));
draw_text(400,250,"Enemy "+string(global.enemy));
draw_text(400,300,"Draws "+string(global.draw));

No comments:

Post a Comment

BREAKING: North Carolina automotive group acquires 7 Upstate dealerships

Breaking news from GSA Business Report Click here to view this message in a browser window. ...