From 28614b922fb77149a54da1a87bebfbc98736f296 Mon Sep 17 00:00:00 2001 From: ModMaker101 <119018978+ModMaker101@users.noreply.github.com> Date: Sun, 8 Mar 2026 19:08:36 -0400 Subject: Modernize project codebase (#906) * Fixed boats falling and a TP glitch #266 * Replaced every C-style cast with C++ ones * Replaced every C-style cast with C++ ones * Fixed boats falling and a TP glitch #266 * Updated NULL to nullptr and fixing some type issues * Modernized and fixed a few bugs - Replaced most instances of `NULL` with `nullptr`. - Replaced most `shared_ptr(new ...)` with `make_shared`. - Removed the `nullptr` macro as it was interfering with the actual nullptr keyword in some instances. * Fixing more conflicts * Replace int loops with size_t and start work on overrides * Add safety checks and fix a issue with vector going OOR --- Minecraft.World/ItemDispenseBehaviors.cpp | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) (limited to 'Minecraft.World/ItemDispenseBehaviors.cpp') diff --git a/Minecraft.World/ItemDispenseBehaviors.cpp b/Minecraft.World/ItemDispenseBehaviors.cpp index 08c73a0c..8758dcfb 100644 --- a/Minecraft.World/ItemDispenseBehaviors.cpp +++ b/Minecraft.World/ItemDispenseBehaviors.cpp @@ -11,7 +11,7 @@ shared_ptr ArrowDispenseBehavior::getProjectile(Level *world, Position *position) { - shared_ptr arrow = shared_ptr(new Arrow(world, position->getX(), position->getY(), position->getZ())); + shared_ptr arrow = std::make_shared(world, position->getX(), position->getY(), position->getZ()); arrow->pickup = Arrow::PICKUP_ALLOWED; return arrow; @@ -21,7 +21,7 @@ shared_ptr ArrowDispenseBehavior::getProjectile(Level *world, Positi shared_ptr EggDispenseBehavior::getProjectile(Level *world, Position *position) { - return shared_ptr(new ThrownEgg(world, position->getX(), position->getY(), position->getZ())); + return std::make_shared(world, position->getX(), position->getY(), position->getZ()); } @@ -29,7 +29,7 @@ shared_ptr EggDispenseBehavior::getProjectile(Level *world, Position shared_ptr SnowballDispenseBehavior::getProjectile(Level *world, Position *position) { - return shared_ptr(new Snowball(world, position->getX(), position->getY(), position->getZ())); + return std::make_shared(world, position->getX(), position->getY(), position->getZ()); } @@ -37,7 +37,7 @@ shared_ptr SnowballDispenseBehavior::getProjectile(Level *world, Pos shared_ptr ExpBottleDispenseBehavior::getProjectile(Level *world, Position *position) { - return shared_ptr(new ThrownExpBottle(world, position->getX(), position->getY(), position->getZ())); + return std::make_shared(world, position->getX(), position->getY(), position->getZ()); } float ExpBottleDispenseBehavior::getUncertainty() @@ -60,7 +60,7 @@ ThrownPotionDispenseBehavior::ThrownPotionDispenseBehavior(int potionValue) shared_ptr ThrownPotionDispenseBehavior::getProjectile(Level *world, Position *position) { - return shared_ptr(new ThrownPotion(world, position->getX(), position->getY(), position->getZ(), m_potionValue)); + return std::make_shared(world, position->getX(), position->getY(), position->getZ(), m_potionValue); } float ThrownPotionDispenseBehavior::getUncertainty() @@ -104,7 +104,7 @@ shared_ptr SpawnEggDispenseBehavior::execute(BlockSource *source, shared_ptr entity = SpawnEggItem::spawnMobAt(source->getWorld(), dispensed->getAuxValue(), spawnX, spawnY, spawnZ, &iResult); // 4J-JEV: Added in-case spawn limit is encountered. - if (entity == NULL) + if (entity == nullptr) { outcome = LEFT_ITEM; return dispensed; @@ -139,7 +139,7 @@ shared_ptr FireworksDispenseBehavior::execute(BlockSource *source, double spawnY = source->getBlockY() + .2f; double spawnZ = source->getZ() + facing->getStepZ(); - shared_ptr firework = shared_ptr(new FireworksRocketEntity(world, spawnX, spawnY, spawnZ, dispensed)); + shared_ptr firework = std::make_shared(world, spawnX, spawnY, spawnZ, dispensed); source->getWorld()->addEntity(firework); outcome = ACTIVATED_ITEM; @@ -183,7 +183,7 @@ shared_ptr FireballDispenseBehavior::execute(BlockSource *source, double dirY = random->nextGaussian() * .05 + facing->getStepY(); double dirZ = random->nextGaussian() * .05 + facing->getStepZ(); - world->addEntity(shared_ptr(new SmallFireball(world, spawnX, spawnY, spawnZ, dirX, dirY, dirZ))); + world->addEntity(std::make_shared(world, spawnX, spawnY, spawnZ, dirX, dirY, dirZ)); outcome = ACTIVATED_ITEM; @@ -254,7 +254,7 @@ shared_ptr BoatDispenseBehavior::execute(BlockSource *source, shar outcome = ACTIVATED_ITEM; - shared_ptr boat = shared_ptr(new Boat(world, spawnX, spawnY + yOffset, spawnZ)); + shared_ptr boat = std::make_shared(world, spawnX, spawnY + yOffset, spawnZ); world->addEntity(boat); dispensed->remove(1); @@ -273,7 +273,7 @@ void BoatDispenseBehavior::playSound(BlockSource *source, eOUTCOME outcome) shared_ptr FilledBucketDispenseBehavior::execute(BlockSource *source, shared_ptr dispensed, eOUTCOME &outcome) { - BucketItem *bucket = (BucketItem *)dispensed->getItem(); + BucketItem *bucket = static_cast(dispensed->getItem()); int sourceX = source->getBlockX(); int sourceY = source->getBlockY(); int sourceZ = source->getBlockZ(); @@ -326,9 +326,9 @@ shared_ptr EmptyBucketDispenseBehavior::execute(BlockSource *sourc dispensed->id = targetType->id; dispensed->count = 1; } - else if (dynamic_pointer_cast(source->getEntity())->addItem(shared_ptr(new ItemInstance(targetType))) < 0) + else if (dynamic_pointer_cast(source->getEntity())->addItem(std::make_shared(targetType)) < 0) { - DefaultDispenseItemBehavior::dispense(source, shared_ptr(new ItemInstance(targetType))); + DefaultDispenseItemBehavior::dispense(source, std::make_shared(targetType)); } outcome = ACTIVATED_ITEM; @@ -442,7 +442,7 @@ shared_ptr TntDispenseBehavior::execute(BlockSource *source, share int targetY = source->getBlockY() + facing->getStepY(); int targetZ = source->getBlockZ() + facing->getStepZ(); - shared_ptr tnt = shared_ptr(new PrimedTnt(world, targetX + 0.5f, targetY + 0.5f, targetZ + 0.5f, nullptr)); + shared_ptr tnt(new PrimedTnt(world, targetX + 0.5, targetY + 0.5, targetZ + 0.5, nullptr)); world->addEntity(tnt); outcome = ACTIVATED_ITEM; -- cgit v1.2.3