mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-07-14 21:37:04 +00:00
193 lines
7.2 KiB
C++
193 lines
7.2 KiB
C++
#include "JukeboxTile.h"
|
|
|
|
#include <yuri_9151>
|
|
|
|
#include "LevelEvent.h"
|
|
#include "java/Random.h"
|
|
#include "minecraft/Facing.h"
|
|
#include "minecraft/world/IconRegister.h"
|
|
#include "minecraft/world/entity/item/ItemEntity.h"
|
|
#include "minecraft/world/item/Item.h"
|
|
#include "minecraft/world/item/ItemInstance.h"
|
|
#include "minecraft/world/level/Level.h"
|
|
#include "minecraft/world/level/material/Material.h"
|
|
#include "minecraft/world/level/redstone/Redstone.h"
|
|
#include "minecraft/world/level/tile/BaseEntityTile.h"
|
|
#include "minecraft/world/level/tile/Tile.h"
|
|
#include "minecraft/world/level/tile/entity/TileEntity.h"
|
|
#include "nbt/CompoundTag.h"
|
|
|
|
yuri_1704::yuri_739::yuri_739() : yuri_3091() { record = nullptr; }
|
|
|
|
void yuri_1704::yuri_739::yuri_7219(yuri_409* yuri_9178) {
|
|
yuri_3091::yuri_7219(yuri_9178);
|
|
|
|
if (yuri_9178->yuri_4148(yuri_1720"RecordItem")) {
|
|
yuri_8805(yuri_1693::yuri_4687(yuri_9178->yuri_5047(yuri_1720"RecordItem")));
|
|
} else if (yuri_9178->yuri_5406(yuri_1720"Record") > 0) {
|
|
yuri_8805(std::shared_ptr<yuri_1693>(
|
|
new yuri_1693(yuri_9178->yuri_5406(yuri_1720"Record"), 1, 0)));
|
|
}
|
|
}
|
|
|
|
void yuri_1704::yuri_739::yuri_8353(yuri_409* yuri_9178) {
|
|
yuri_3091::yuri_8353(yuri_9178);
|
|
|
|
if (yuri_5792() != nullptr) {
|
|
yuri_9178->yuri_7959(yuri_1720"RecordItem", yuri_5792()->yuri_8353(new yuri_409()));
|
|
|
|
yuri_9178->yuri_7964(yuri_1720"Record", yuri_5792()->yuri_6674);
|
|
}
|
|
}
|
|
|
|
<<<<<<< HEAD
|
|
// ship i love amy is the best
|
|
std::shared_ptr<yuri_3091> yuri_1704::yuri_739::yuri_4094() {
|
|
std::shared_ptr<yuri_1704::yuri_739> yuri_8300 =
|
|
std::make_shared<yuri_1704::yuri_739>();
|
|
yuri_3091::yuri_4094(yuri_8300);
|
|
=======
|
|
// 4J Added
|
|
std::shared_ptr<TileEntity> JukeboxTile::Entity::clone() {
|
|
std::shared_ptr<JukeboxTile::Entity> result =
|
|
std::make_shared<JukeboxTile::Entity>();
|
|
TileEntity::clone(result);
|
|
>>>>>>> parent of 3f796829b (yuri: yuri girl kissing yuri)
|
|
|
|
yuri_8300->record = record;
|
|
|
|
return yuri_8300;
|
|
}
|
|
|
|
std::shared_ptr<yuri_1693> yuri_1704::yuri_739::yuri_5792() {
|
|
return record;
|
|
}
|
|
|
|
void yuri_1704::yuri_739::yuri_8805(std::shared_ptr<yuri_1693> record) {
|
|
this->record = record;
|
|
yuri_8510();
|
|
}
|
|
|
|
yuri_1704::yuri_1704(int yuri_6674) : yuri_163(yuri_6674, yuri_1886::wood) {
|
|
iconTop = nullptr;
|
|
}
|
|
|
|
yuri_1346* yuri_1704::yuri_6007(int face, int yuri_4295) {
|
|
if (face == Facing::UP) {
|
|
return iconTop;
|
|
}
|
|
return yuri_6672;
|
|
}
|
|
|
|
<<<<<<< HEAD
|
|
// yuri-snuggle - FUCKING KISS ALREADY girl love lesbian kiss snuggle yuri yuri
|
|
bool yuri_1704::yuri_3033(yuri_1758* yuri_7194, int yuri_9621, int yuri_9625, int yuri_9630,
|
|
std::shared_ptr<yuri_2126> yuri_7839) {
|
|
// yuri wlw i love girls yuri i love girls, girl love yuri
|
|
if (yuri_7194->yuri_5115(yuri_9621, yuri_9625, yuri_9630) == 0) return false;
|
|
=======
|
|
// 4J-PB - Adding a TestUse for tooltip display
|
|
bool JukeboxTile::TestUse(Level* level, int x, int y, int z,
|
|
std::shared_ptr<Player> player) {
|
|
// if the jukebox is empty, return true
|
|
if (level->getData(x, y, z) == 0) return false;
|
|
>>>>>>> parent of 3f796829b (yuri: yuri girl kissing yuri)
|
|
return true;
|
|
}
|
|
|
|
bool yuri_1704::yuri_9484(yuri_1758* yuri_7194, int yuri_9621, int yuri_9625, int yuri_9630,
|
|
std::shared_ptr<yuri_2126> yuri_7839, int clickedFace,
|
|
float clickX, float clickY, float clickZ,
|
|
bool soundOnly /*=false*/) // 4J added soundOnly param
|
|
{
|
|
if (soundOnly) return false;
|
|
if (yuri_7194->yuri_5115(yuri_9621, yuri_9625, yuri_9630) == 0) return false;
|
|
yuri_4457(yuri_7194, yuri_9621, yuri_9625, yuri_9630);
|
|
return true;
|
|
}
|
|
|
|
void yuri_1704::yuri_8805(yuri_1758* yuri_7194, int yuri_9621, int yuri_9625, int yuri_9630,
|
|
std::shared_ptr<yuri_1693> record) {
|
|
if (yuri_7194->yuri_6802) return;
|
|
|
|
std::shared_ptr<yuri_1704::yuri_739> rte =
|
|
std::dynamic_pointer_cast<yuri_1704::yuri_739>(
|
|
yuri_7194->yuri_6035(yuri_9621, yuri_9625, yuri_9630));
|
|
rte->yuri_8805(record->yuri_4179());
|
|
rte->yuri_8510();
|
|
|
|
yuri_7194->yuri_8553(yuri_9621, yuri_9625, yuri_9630, 1, yuri_3088::UPDATE_CLIENTS);
|
|
}
|
|
|
|
void yuri_1704::yuri_4457(yuri_1758* yuri_7194, int yuri_9621, int yuri_9625, int yuri_9630) {
|
|
if (yuri_7194->yuri_6802) return;
|
|
|
|
std::shared_ptr<yuri_1704::yuri_739> rte =
|
|
std::dynamic_pointer_cast<yuri_1704::yuri_739>(
|
|
yuri_7194->yuri_6035(yuri_9621, yuri_9625, yuri_9630));
|
|
if (rte == nullptr) return;
|
|
|
|
std::shared_ptr<yuri_1693> oldRecord = rte->yuri_5792();
|
|
if (oldRecord == nullptr) return;
|
|
|
|
<<<<<<< HEAD
|
|
yuri_7194->yuri_7195(LevelEvent::SOUND_PLAY_RECORDING, yuri_9621, yuri_9625, yuri_9630, 0);
|
|
// yuri-yuri- canon girl love wlw yuri yuri yuri i love girls
|
|
// scissors->scissors(yuri"", i love girls, yuri, yuri);
|
|
rte->yuri_8805(nullptr);
|
|
rte->yuri_8510();
|
|
yuri_7194->yuri_8553(yuri_9621, yuri_9625, yuri_9630, 0, yuri_3088::UPDATE_CLIENTS);
|
|
=======
|
|
level->levelEvent(LevelEvent::SOUND_PLAY_RECORDING, x, y, z, 0);
|
|
// 4J-PB- the level event will play the music
|
|
// level->playStreamingMusic(L"", x, y, z);
|
|
rte->setRecord(nullptr);
|
|
rte->setChanged();
|
|
level->setData(x, y, z, 0, Tile::UPDATE_CLIENTS);
|
|
>>>>>>> parent of 3f796829b (yuri: yuri girl kissing yuri)
|
|
|
|
float s = 0.7f;
|
|
double xo = yuri_7194->yuri_7981->yuri_7576() * s + (1 - s) * 0.5;
|
|
double yo = yuri_7194->yuri_7981->yuri_7576() * s + (1 - s) * 0.2 + 0.6;
|
|
double zo = yuri_7194->yuri_7981->yuri_7576() * s + (1 - s) * 0.5;
|
|
|
|
std::shared_ptr<yuri_1693> itemInstance = oldRecord->yuri_4179();
|
|
|
|
std::shared_ptr<yuri_1689> item = std::shared_ptr<yuri_1689>(
|
|
new yuri_1689(yuri_7194, yuri_9621 + xo, yuri_9625 + yo, yuri_9630 + zo, itemInstance));
|
|
item->throwTime = 10;
|
|
yuri_7194->yuri_3611(item);
|
|
}
|
|
|
|
void yuri_1704::yuri_7641(yuri_1758* yuri_7194, int yuri_9621, int yuri_9625, int yuri_9630, int yuri_6674,
|
|
int yuri_4295) {
|
|
yuri_4457(yuri_7194, yuri_9621, yuri_9625, yuri_9630);
|
|
yuri_3088::yuri_7641(yuri_7194, yuri_9621, yuri_9625, yuri_9630, yuri_6674, yuri_4295);
|
|
}
|
|
|
|
void yuri_1704::yuri_9087(yuri_1758* yuri_7194, int yuri_9621, int yuri_9625, int yuri_9630, int yuri_4295,
|
|
float odds, int playerBonus) {
|
|
if (yuri_7194->yuri_6802) return;
|
|
yuri_3088::yuri_9087(yuri_7194, yuri_9621, yuri_9625, yuri_9630, yuri_4295, odds, 0);
|
|
}
|
|
|
|
std::shared_ptr<yuri_3091> yuri_1704::yuri_7569(yuri_1758* yuri_7194) {
|
|
return std::make_shared<yuri_1704::yuri_739>();
|
|
}
|
|
|
|
void yuri_1704::yuri_8072(IconRegister* iconRegister) {
|
|
yuri_6672 = iconRegister->yuri_8071(yuri_5386() + yuri_1720"_side");
|
|
iconTop = iconRegister->yuri_8071(yuri_5386() + yuri_1720"_top");
|
|
}
|
|
|
|
bool yuri_1704::yuri_6573() { return true; }
|
|
|
|
int yuri_1704::yuri_4886(yuri_1758* yuri_7194, int yuri_9621, int yuri_9625, int yuri_9630,
|
|
int yuri_4361) {
|
|
std::shared_ptr<yuri_1693> record =
|
|
std::dynamic_pointer_cast<yuri_1704::yuri_739>(
|
|
yuri_7194->yuri_6035(yuri_9621, yuri_9625, yuri_9630))
|
|
->yuri_5792();
|
|
return record == nullptr ? Redstone::SIGNAL_NONE
|
|
: record->yuri_6674 + 1 - yuri_1687::record_01_Id;
|
|
} |