PocketMine-MP
5.19.1 git-5cc1068cd43264d3363295eb8d6901e02f467897
EntityShootBowEvent.php
1
<?php
2
3
/*
4
*
5
* ____ _ _ __ __ _ __ __ ____
6
* | _ \ ___ ___| | _____| |_| \/ (_)_ __ ___ | \/ | _ \
7
* | |_) / _ \ / __| |/ / _ \ __| |\/| | | '_ \ / _ \_____| |\/| | |_) |
8
* | __/ (_) | (__| < __/ |_| | | | | | | | __/_____| | | | __/
9
* |_| \___/ \___|_|\_\___|\__|_| |_|_|_| |_|\___| |_| |_|_|
10
*
11
* This program is free software: you can redistribute it and/or modify
12
* it under the terms of the GNU Lesser General Public License as published by
13
* the Free Software Foundation, either version 3 of the License, or
14
* (at your option) any later version.
15
*
16
* @author PocketMine Team
17
* @link http://www.pocketmine.net/
18
*
19
*
20
*/
21
22
declare(strict_types=1);
23
24
namespace
pocketmine\event\entity
;
25
26
use
pocketmine\entity\Entity
;
27
use
pocketmine\entity\Living
;
28
use
pocketmine\entity\projectile\Projectile
;
29
use
pocketmine\event\Cancellable
;
30
use
pocketmine\event\CancellableTrait
;
31
use
pocketmine\item\Item
;
32
use
function
count;
33
37
class
EntityShootBowEvent
extends
EntityEvent
implements
Cancellable
{
38
use
CancellableTrait
;
39
40
private
Entity
$projectile;
41
42
public
function
__construct(
43
Living
$shooter,
44
private
Item
$bow,
45
Projectile
$projectile,
46
private
float
$force
47
){
48
$this->entity = $shooter;
49
$this->projectile = $projectile;
50
}
51
55
public
function
getEntity
(){
56
return
$this->entity
;
57
}
58
59
public
function
getBow() :
Item
{
60
return $this->bow;
61
}
62
68
public
function
getProjectile
() :
Entity
{
69
return $this->projectile;
70
}
71
72
public
function
setProjectile(
Entity
$projectile) : void{
73
if($projectile !== $this->projectile){
74
if
(count($this->projectile->getViewers()) === 0){
75
$this->projectile->close();
76
}
77
$this->projectile = $projectile;
78
}
79
}
80
81
public
function
getForce() : float{
82
return $this->force;
83
}
84
85
public
function
setForce(
float
$force) : void{
86
$this->force = $force;
87
}
88
}
pocketmine\entity\Entity
Definition:
Entity.php:82
pocketmine\entity\Living
Definition:
Living.php:82
pocketmine\entity\projectile\Projectile
Definition:
Projectile.php:54
pocketmine\event\entity\EntityEvent
Definition:
EntityEvent.php:35
pocketmine\event\entity\EntityEvent\$entity
Entity $entity
Definition:
EntityEvent.php:37
pocketmine\event\entity\EntityShootBowEvent
Definition:
EntityShootBowEvent.php:37
pocketmine\event\entity\EntityShootBowEvent\getEntity
getEntity()
Definition:
EntityShootBowEvent.php:55
pocketmine\event\entity\EntityShootBowEvent\getProjectile
getProjectile()
Definition:
EntityShootBowEvent.php:68
pocketmine\item\Item
Definition:
Item.php:60
pocketmine\event\Cancellable
Definition:
Cancellable.php:34
pocketmine\event\entity
Definition:
EntityBlockChangeEvent.php:24
pocketmine\event\CancellableTrait
trait CancellableTrait
Definition:
CancellableTrait.php:34
src
event
entity
EntityShootBowEvent.php
Generated by
1.9.3