1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- #include "PlayerHand.h"
- #include "Block.h"
- #include "Entity.h"
- PlayerHandItemType::PlayerHandItemType()
- : ItemType()
- {
- setName("PlayerHand");
- setMaxStackSize(0);
- }
- Item* PlayerHandItemType::createItem() const
- {
- return 0; // there is no player hand item
- }
- ItemSkill* PlayerHandItemType::createDefaultItemSkill() const
- {
- return new PlayerHandSkill();
- }
- void PlayerHandItemType::levelUpItemSkill(ItemSkill* zSkill) const {}
- PlayerHandSkill::PlayerHandSkill()
- : ItemSkill()
- {
- setXp(0.f);
- setMaxXp(1.f);
- setLevel(1.f);
- }
- bool PlayerHandSkill::use(Entity* zActor, Item* zUsedItem, Block* zTarget)
- {
- if (zActor->getStamina() > 0.001f)
- {
- if (zTarget && zTarget->getHardness() <= 1)
- {
- zActor->setStamina(zActor->getStamina() - 0.001f);
- zTarget->setHP(zActor,
- zUsedItem,
- this,
- zTarget->getHP() - 1 / (zTarget->getHardness() + 1));
- }
- else
- {
- zActor->setStamina(zActor->getStamina() - 0.001f);
- zActor->setHP(
- zActor, zUsedItem, this, zActor->getCurrentHP() - 0.01f);
- }
- }
- return false; // item was not changed
- }
- bool PlayerHandSkill::use(Entity* zActor, Item* zUsedItem, Entity* zTarget)
- {
- // TODO: make damage on the entity
- return false; // item was not changed
- }
|