#pragma once #include "..\Minecraft.World\DefaultDispenseItemBehavior.h" class Projectile; class AbstractProjectileDispenseBehavior : public DefaultDispenseItemBehavior { public: shared_ptr execute(BlockSource *source, shared_ptr dispensed); protected: virtual void playSound(BlockSource *source); virtual shared_ptr getProjectile(Level *world, Position *position) = 0; virtual float getUncertainty(); virtual float getPower(); };