1. The forums will be archived and moved to a read only mode in about 2 weeks (mid march).

Solved How to set cooldown?

Discussion in 'Development' started by minijaham, Aug 14, 2020.

  1. minijaham

    minijaham Skeleton

    Messages:
    801
    GitHub:
    minijaham
    First question, is there a way to boost a player's damage without using strength? I am sorry if something similar was posted previously. I searched everywhere but couldn't find one that fit my need.

    Second question, I am not really familiar with time(), so could someone teach me how to set a cooldown on item use event?

    Thank you!
     
  2. GodWeedZao

    GodWeedZao Zombie Pigman

    Messages:
    401
    GitHub:
    godweedzao
    yes, you can add more damages by function EntityDamageByEntityEvent,
    you can do this like:
    PHP:
    /**
    * @param EntityDamageByEntityEvent $event
    */

    public function onPvP(EntityDamageByEntityEvent $event) {
        
    $player $event->getEntity();
        
    $damager $event->getDamager();
        if (
    $damager instanceof Player && $player instanceof Player) { //check if player won't damage mobs or ...
            
    $player->setHealth($player->getHealth() - 2); //every 2 damage = 1 Heart in Minecraft
        
    }
    }
    now its done, every damage by players, you lose (({sword_damage} or {Tools_Damage} or hand damage)) + 1 heart

    its boosted :p
     
    minijaham likes this.
  3. GodWeedZao

    GodWeedZao Zombie Pigman

    Messages:
    401
    GitHub:
    godweedzao
    or you can check if item in damafer hand is Sword like this code (if player damaging you by hand your damaging speed won't boost) :
    PHP:
    /**
    * @param EntityDamageByEntityEvent $event
    */

    public function onPvP(EntityDamageByEntityEvent $event) {
        
    $player $event->getEntity();
        
    $damager $event->getDamager();
        if (
    $damager instanceof Player && $player instanceof Player) { //check if player won't damage mobs or ...
            
    if ($damager->getInventory()->getItemInHand() instanceof Sword) { //check if you are damaging by sword
                
    $player->setHealth($player->getHealth() - 2); //every 2 damage = 1 Heart in Minecraft
            
    }
        }
    }
    Done?
     
  4. GodWeedZao

    GodWeedZao Zombie Pigman

    Messages:
    401
    GitHub:
    godweedzao
    also in the end if you want to check if player damaging you by hand use this code:

    PHP:
    /**
    * @param EntityDamageByEntityEvent $event
    */

    public function onPvP(EntityDamageByEntityEvent $event) {
        
    $player $event->getEntity();
        
    $damager $event->getDamager();
        if (
    $damager instanceof Player && $player instanceof Player) { //check if player won't damage mobs or ...
            
    if ($damager->getInventory()->getItemInHand()->getId() === Item::AIR) { //check if you are damaging by Hand
                
    $player->setHealth($player->getHealth() - 2); //every 2 damage = 1 Heart in Minecraft
            
    }
        }
    }
     
  5. RicardoMilos384

    RicardoMilos384 Slime

    Messages:
    82
    GitHub:
    ricardomilos384
    Bruh
     
    Diduhless and Primus like this.
  6. GodWeedZao

    GodWeedZao Zombie Pigman

    Messages:
    401
    GitHub:
    godweedzao
    see my plugin, use that source:
    LINK
     
  7. GodWeedZao

    GodWeedZao Zombie Pigman

    Messages:
    401
    GitHub:
    godweedzao
    :|
     
  8. RicardoMilos384

    RicardoMilos384 Slime

    Messages:
    82
    GitHub:
    ricardomilos384
    Why not use this?

    $event->setBaseDamage($event->getBaseDamage() + $bonusDamage);
     
  9. Primus

    Primus Zombie Pigman

    Messages:
    749
    Why not modify the final damage in the event itself?

    You were tiny bit faster.
     
  10. GodWeedZao

    GodWeedZao Zombie Pigman

    Messages:
    401
    GitHub:
    godweedzao
    yes its better.

    but there isnt any diffrence ;)
     
  11. minijaham

    minijaham Skeleton

    Messages:
    801
    GitHub:
    minijaham
    Thank you all for your responses! <3

    Now I need to figure out how to set a cooldown using time()
     
    Last edited: Aug 14, 2020
  12. GodWeedZao

    GodWeedZao Zombie Pigman

    Messages:
    401
    GitHub:
    godweedzao
    search it on forum, i remember i anwsered a person with this problem and his problem solved.
    also im using task for cooldown, its better in my mind :D.
    if you want to know about create task with cooldown just look at my plugin, and for timezone(0 first read a bout this function on php.net, then see my paste thread, i told a person how is that possible ;).
     
    minijaham likes this.
  13. Diduhless

    Diduhless Baby Zombie

    Messages:
    199
    GitHub:
    Diduhless
    minijaham likes this.
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.