Energy
The Energy system manages player energy resources used to perform actions within your game. Learn more in the Energy concept guide.
Overview
#
The Energy system allows your game to:
- Retrieve current energy levels and timers.
- Spend energy to perform specific actions.
- Grant energy directly to players.
Before You Start
#
Make sure you have:
- Unity project configured with Hiro SDK.
- Nakama system integrated (guide).
Working with Energy
#
Retrieving Player Energies
#
Get all available energies and their timers for the player:
1
2
| energy_list = await hiro_client.energy_get()
print(energy_list)
|
Spending Energy
#
Spend player energy to complete actions:
1
2
3
4
5
6
7
8
| request = EnergySpendRequest()
request.amounts = {
"power": 10,
"tickets": 1
}
energy_spend_rewards = await hiro_client.energy_spend(request)
print(energy_spend_rewards)
|
Spending energy with a custom refill start time
#
Spend energy and control when the refill timer starts for each energy.
1
2
3
4
5
6
7
8
9
10
| import time
request = EnergySpendWithRefillStartTimeRequest()
request.spends = {
"power": EnergySpendWithTime(amount=10, refill_start_time=int(time.time())),
"tickets": EnergySpendWithTime(amount=1, refill_start_time=int(time.time()) - 300)
}
energy_spend_reward = await hiro_client.energy_spend_with_refill_start_time(session, request)
print(energy_spend_reward)
|
Granting Energy
#
Directly grant energy resources to a player:
1
2
3
4
5
6
7
8
| request = EnergyGrantRequest()
request.amounts = {
"power": 10,
"tickets": 1
}
energy_list = await hiro_client.energy_grant(request)
print(energy_list)
|
Next Steps
#