top of page

Fallen Petal

Click the button you want to jump on that section.

Dialogue System

12月23日.gif
12月23日(2).gif
AC_Dialogue_Base_OpenConversation_00004.png

“OpenConversation” function
First, create the stack in the actor component base. Then get the reference of the stack.

After creating the stack, push the UI_Dialogue widget. Set the dialogue widget as a reference and set the Owning Dialogue Component to self. Then activate the widget so the player can control the UI.

AC_Dialogue_Base_OpenConversation_00005.png
AC_Dialogue_Base_OpenConversation_00006.png

After activating the widget, call the function “ProgressDialogue”. After that add the widget to the viewport and set input mode to UI only so that the player can control only UI not in the game, and also the show mouse cursor.

“ProgressDialogue” function

This function is to reset the dialogue index so make sure the dialogue start from the beginning. And will call out dialogue function.

AC_Dialogue_Base_ProgressDialogue_00001.png
AC_Dialogue_XuanGui_Dialogue_00004.png

“Dialogue” function

Dialogue function will happen in the children's class. The text and name will be added to the “AddDialogue” function. The option also will be passed in using an array.

So when the dialogue comes to an end, it will call out “ClearDialogueProgress” and “CloseConversation” functions.

AC_Dialogue_XuanGui_Dialogue_00005.png
AC_Dialogue_Base_AddDialogue_00002.png

“AddDialogue” function

Get the data from the “Dialogue” function and update it to the “UpdateDialogueText” function, and the index will increase so the dialogue can go to the next conversation.

“UpdateDialogueText” function

This function mainly updates the UI.

UI_Dialogue_UpdateDialogueText_00001.png
AC_Dialogue_Base_ClearDialogueProgress_00001.png

“ClearDialogueProgress” function

This function will clear the dialogue progress, to make sure the dialogue goes back to the beginning.

“RemoveDialogueProgress” function

This function is called to go back to a specific index of dialogue.

AC_Dialogue_Base_RemoveDialogueProgress_00002.png
AC_Dialogue_Base_CloseConversation_00001.png

“CloseConversation” function

After all the dialogue happens, it will call this function. It will remove the dialogue widget.

Damage System (Health system, fire meter and shield)

12月23日(4).gif
11月28日(1).gif
12月23日(3).gif

”Heal” function

First will check if the actor is dead or if not then will heal a specific amount of health.

BPC_DamageSystem_Heal_00001.png
BPC_DamageSystem_RecoverShield_00001.png

”RecoverShield” function

First will check if the actor is dead or if not then will recover a specific amount of shield.

Full “TakeDamage” function

BPC_DamageSystem_TakeDamage_00007.png

When taking damage, it will first go through here to check whether the actor can be damaged or not.

“CanBeDamaged” Macro

BPC_DamageSystem_CanBeDamaged_00001.png
BPC_DamageSystem_TakeDamage_00008.png

If its block damage, it will call the OnBlocked event dispatcher.

If no damage then will just return nothing.

BPC_DamageSystem_TakeDamage_00009.png
BPC_DamageSystem_TakeDamage_00010.png

So if do damage, it will check the type of element damage first.

This will check if the actor has a fire meter.

BPC_DamageSystem_TakeDamage_00011.png
BPC_DamageSystem_TakeDamage_00012.png

This will check is the damage is caused more than the shield.

If yes, then will deduct the shield first, and then the rest amount of the damage will be deducted health.

BPC_DamageSystem_TakeDamage_00013.png
BPC_DamageSystem_TakeDamage_00014.png

If not, then will check is the shield available.

If the shield is available, it will deduct the shield, if not then deduct the health.

BPC_DamageSystem_TakeDamage_00015.png
BPC_DamageSystem_TakeDamage_00016.png

If receive water element damaged, it will check if the amount of damage is more than the fire meter.

If yes, then will deduct the fire meter first, and then the rest amount of the damage will be deducted health.

BPC_DamageSystem_TakeDamage_00017.png
BPC_DamageSystem_TakeDamage_00018.png

If not, it will check if the fire meter is available or not, if not available, then will deduct the fire meter.

After all the damage is calculated, it will check if the actor is dead or not.

BPC_DamageSystem_TakeDamage_00019.png
BPC_DamageSystem_TakeDamage_00020.png

If the actor is dead then will call out the OnDeath event dispatcher.

If not, it will check actor is interruptable or should force interrupt. Then will give a response to each type

BPC_DamageSystem_TakeDamage_00021.png
BPC_DamageSystem_TakeDamage_00022.png

Will check if it is on low hp or not, if yes then call the LowHp event dispatcher, and then will return the node.

User Interface

All UI was using Common UI plugin

Main Menu
Include(Credits, Settings, Controls)

11月28日(4).gif
MainMenuChar_EventGraph_00000.png

When entering the game, the actor will called and it will create the Main Menu stack (using the Common UI plugin)

After that, will activate the stack, and then push the main menu widget.

MainMenuChar_EventGraph_00001.png
UI_MainMenu_EventGraph_00001.png

When pressing the New Game button, it will calling the loading screen stack.

After that, will activate the stack, and then push the loading widget.

UI_MainMenu_EventGraph_00002.png
UI_MainMenu_EventGraph_00003.png

Then will open the level.

When pressing other button, it will first get reference of the stack, then push widget.

UI_MainMenu_EventGraph_00005.png
11月28日(6).gif

Tutorial scene
Include(Movement, Skill, Attack, Enemy)

After the conversation / specific area, it will call out the tutorial stack.

BP_MainCharacter_TutorIalComboReferenceUI_00000.png
BP_MainCharacter_CallOutTutorialComboUI_00000.png

Then will activate it, after that will push the specific widget.

Pause Menu
Include(Credits, Settings, Controls)

11月28日(5).gif
BP_MainCharacter_CallOutPauseMenuUI_00001.png

First will set game paused when pressing escape button. Then activate the pause menu stack that already created at the beginning. 

After that push Pause Menu widget.

BP_MainCharacter_CallOutPauseMenuUI_00002.png
11月28日(7).gif

Settings
Include(Reset to last save, Confirm to save, and Back to last save)

When entering the seeting menu, first it will check that is there any saving exist.

UI_Settings_EventGraph_00000.png
UI_Settings_EventGraph_00001.png

If true, it will load the slot.

After that, it will get the data from the saved data, the set every data to the slider.

UI_Settings_EventGraph_00002.png
UI_Settings_EventGraph_00003.png

If no data was saved before, it will create a save actor, then set the value to default.

11月28日(8).gif
11月28日(1).gif
11月28日(2).gif

Health Bar delay effect
Include(Player Health Bar, Enemy Health Bar, Boss Fire Meter)

image.png
11月28日(9).gif

Defeat scene

Dialogue
Include (Multiple option)

11月28日(10).gif
bottom of page