10/3
Enneagram Stuff
Personality Test
https://app.trueself.io/landing
Add your Enneagram Results AM
Add your Enneagram Results PM
Enneagram Types
Enneagram Type One - THE REFORMER
The Rational, Idealistic Type: Principled, Purposeful, Self-Controlled, and Perfectionistic
https://www.enneagraminstitute.com/type-1/
Enneagram Type Two - THE HELPER
The Caring, Interpersonal Type: Generous, Demonstrative, People-Pleasing, and Possessive
https://www.enneagraminstitute.com/type-2/
Enneagram Type Three - THE ACHIEVER
The Success-Oriented, Pragmatic Type: Adaptable, Excelling, Driven, and Image-Conscious
https://www.enneagraminstitute.com/type-3/
Enneagram Type Four - THE INDIVIDUALIST
The Sensitive, Introspective Type: Expressive, Dramatic, Self-Absorbed, and Temperamental
https://www.enneagraminstitute.com/type-4/
Enneagram Type Five - THE INVESTIGATOR
The Intense, Cerebral Type: Perceptive, Innovative, Secretive, and Isolated
https://www.enneagraminstitute.com/type-5/
Enneagram Type Six - THE LOYALIST
The Committed, Security-Oriented Type: Engaging, Responsible, Anxious, and Suspicious
https://www.enneagraminstitute.com/type-6/
Enneagram Type Seven - THE ENTHUSIAST
The Busy, Variety-Seeking Type: Spontaneous, Versatile, Acquisitive, and Scattered
https://www.enneagraminstitute.com/type-7/
Enneagram Type Eight - THE CHALLENGER
The Powerful, Dominating Type: Self-Confident, Decisive, Willful, and Confrontational
https://www.enneagraminstitute.com/type-8/
Enneagram Type Nine - THE PEACEMAKER
The Easygoing, Self-Effacing Type: Receptive, Reassuring Agreeable, and Complacent
https://www.enneagraminstitute.com/type-9/
For you JavaScript Heads
https://gdevelop.io/page/javascript-game-engine
https://www.youtube.com/watch?v=vflsEWHxXtc
https://docs.google.com/presentation/d/1TbQoPHRd-RKLHGO1d5vldIsUjF4Ff2ojdqkydNmpIeE/edit#slide=id.p
Start off the day with the warm-up
We are moving in to the next phase of this class and it is the best part in my opinion because this is where you start creating your own content. This is also the phase where it takes the most self-discipline so I want to go over the syllabus again so we are all clear on expectations.
What are you learning?
GDevelop
Why is it important?
Now that we have created a came with SMBX and learned about level, storyboarding, NPCs and design, it's time to go to the next step... adding physics, conditions, actions, scenes, If/Then statements and more!
GDevelop uses the Box2D Physics Engine
How do you show that you understand? What is the assignment?
We have been building a game together from scratch and now it is time to use what you have learned and add it to your own CARTKour Game
Make sure and add
Score
Global Variables
Tiled Sprites
Life System
Object variables
Spawn Point
Crouch
Delays
External Events
Enemies
Animations
Camera Movement
keeping score of the coins collected
Add a new object
This time we are going to add a Text Object
object name: Scoredisplay
Font Size: 50
Click Bold
Text to display
Score :
Add your score to the top left
When you click preview, it doesn't show up because it is not on its own layer and we have the camera following the Hero
Select your score object and move it to the Front Layer
Test and save
Open up settings
Click Edit scene variables
Click add a scene variable
This is a scene variable so it is only going to work in this scene versus a global variable that will work throughout the entire project
Name the variable Score
The type we want is a number
We will start with 0
Switch to the events tab
Create a new event group
Name it score
Move your Hero coin collision into your Score Event Group
Now we are going to add an additional action to the coin collision
Add Change variable value
We are giong to use the variable that we just created
Score
The modification we want is to ADD
The value we want to use is 1
So our if then statement is
If the hero is in collision with the coin then delete the coin, play the sound and add one to the score variable
As you can see, nothing is happening on the screen, all the variable stuff is going on behind the scene.
We need to add an event that shows the Score variable on the screen.
Add a new event
We want the score to always be showing so we leave the condition blank
Our action is going to be Modify Text
The object
Score
The text
"Score : " + VariableString(Score)
So what we are saying is After the text Score:, we are adding Score Variable printed on the screen
Now that we have created our scene variables that work only in the scene/level, we are going to change them into global variables so that they will work across all scenes that we select
Click on the project manager
Click on Global Variables
Click Add a variable
Create a new global variable called Score
make it a number
the number to start with is 0
Click Apply
So we have a scene variable and a global variable and they are both called score
Go to your events and find the event where the hero collides with the coin
find the action Change the variable Score add one
Double Click
Select Add or edit variables
Delete the Score Variable IN YOUR SCENE VARIABLE
Switch to your Gobal variables
Click on your Score Variable
Click Apply
Now when we look at the action, you can see that the Scene variable Score has changed to the Global Variable Score
It will not count the score on your screen because the Change the text is still pointing to the old scene variable
Open up this action
Change the text from
"Score : " + VariableString(Score)
to
"Score : " + GlobalVariableString(Score)
Get a life!
Time for a life system
Add a new object
Heart
Create a heart with piskel
64x64
Apply
Add new object
TILED SPRITE not Sprite
Name it TileHeart
Choose File
Choose a file
Assets
Find your heart
Place your regular heart in the game somewhere
Place your tiled heart under your score
Move the TileHeart to the Front Layer with the score
Go to events and create a new group
Name the group Health
You are now going to create an Object Variable
So a variable connected to an object
Add a new event
Object is Hero
Variable Value
Click the purple box to open your object variables
Add an Object Variable
Name the variable Health
The variable is going to be a number
The number is going to be 2 (we are starting with two lives)
So we are setting the variable to 2
We need to add the collision conditions to start taking away and adding lives
Hero is in collision with Heart
The action is going to be to change the Object Variable
So what we want to say
If the hero is in collision with the heart then add 1 to the health variable of the hero
Test and save
In your events, add a collision so that if the hero touches the blade, the scene resets
Add Delete Heart to the action so it disappears
Add a new event
Condition is always
Object is the Tileheart
The action is the width
What we want to do is multiply the Hero Variable (health) by 64 so that the width shows a heart for each life (variable in health)
Hero.Variable(Health) * 64
Test and save
Time to delete the hearts when the players dies
Add a new event in your Health section
If hero is in collision with killzone
The action is going to be the opposite action of when it collides with the heart so we want to change the variable of the Hero by subtracting one
Add a couple hearts to your game and test it.
Notice the hearts count up but when you die, it resets to two hearts
there is something in our game that is breaking it
When we collide with death, the game/scene is restarting
We need to delete the hero/killzone collision
Create a new event (spawn point)
Add new object
Sprite
NO PISKEL THIS TIME
Apply
Set the spawn point at the start position
What we want to happen is the hero collides with the killzone, a heart is taken away in the variable and on the screen then the hero respawns
Under health, find your hero is in collison with Killzone
add another action
We want to change the position to the X and Y position of the object we created called Spawn
At this point, I want you to add what we have gone over up to this point into your CARTKour Game