Expose Some Properties
Build / Build (ARM64, Client) (push) Waiting to run Details
Build / Build (ARM64, Server) (push) Waiting to run Details
Build / Build (ARMHF, Client) (push) Waiting to run Details
Build / Build (ARMHF, Server) (push) Waiting to run Details
Build / Test (Client) (push) Waiting to run Details
Build / Test (Server) (push) Waiting to run Details
Build / Release (push) Blocked by required conditions Details
Build / Build (AMD64, Server) (push) Has been cancelled Details
Build / Build (AMD64, Client) (push) Has been cancelled Details

This commit is contained in:
TheBrokenRail 2024-01-23 20:51:36 -05:00
parent f7be586a4c
commit 46241c9aa0
4 changed files with 18 additions and 8 deletions

View File

@ -0,0 +1,5 @@
#pragma once
#include "server_properties.h"
ServerProperties &get_server_properties();

View File

@ -0,0 +1,6 @@
#pragma once
#include <unordered_map>
#include <vector>
extern std::unordered_map<std::string, std::vector<std::string>> sound_repository;

View File

@ -21,7 +21,7 @@
#include <symbols/minecraft.h> #include <symbols/minecraft.h>
#include <mods/server/server_properties.h> #include <mods/server/server.h>
#include <mods/feature/feature.h> #include <mods/feature/feature.h>
#include <mods/init/init.h> #include <mods/init/init.h>
@ -44,7 +44,7 @@ __attribute__((constructor)) static void _init_only_generate(int argc, char *arg
} }
// Server Properties // Server Properties
static ServerProperties &get_server_properties() { ServerProperties &get_server_properties() {
static ServerProperties properties; static ServerProperties properties;
return properties; return properties;
} }

View File

@ -1,5 +1,3 @@
#include <unordered_map>
#include <vector>
#include <string> #include <string>
#include <cstdlib> #include <cstdlib>
#include <ctime> #include <ctime>
@ -8,9 +6,10 @@
#include <media-layer/audio.h> #include <media-layer/audio.h>
#include "sound-internal.h" #include "sound-internal.h"
#include <mods/sound/sound.h>
// Sound Repository Extracted From MCPE 0.6.1 APK // Sound Repository Extracted From MCPE 0.6.1 APK
static std::unordered_map<std::string, std::vector<std::string>> repository = { std::unordered_map<std::string, std::vector<std::string>> sound_repository = {
{ {
{ {
"step.cloth", "step.cloth",
@ -355,9 +354,9 @@ __attribute__((constructor)) static void init_rand_seed() {
} }
// Pick Sound // Pick Sound
std::string _sound_pick(std::string sound) { std::string _sound_pick(std::string sound) {
if (repository.count(sound) > 0) { if (sound_repository.count(sound) > 0) {
// Sound Exists // Sound Exists
std::vector<std::string> &options = repository[sound]; std::vector<std::string> &options = sound_repository[sound];
return options[rand() % options.size()]; return options[rand() % options.size()];
} else { } else {
// Invalid Sound // Invalid Sound
@ -370,7 +369,7 @@ std::string _sound_pick(std::string sound) {
void _sound_resolve_all() { void _sound_resolve_all() {
std::string source = _sound_get_source_file(); std::string source = _sound_get_source_file();
if (source.size() > 0) { if (source.size() > 0) {
for (auto &it : repository) { for (auto &it : sound_repository) {
for (std::string &name : it.second) { for (std::string &name : it.second) {
// Zero Volume Prevents An OpenAL Source From Being Allocated While Still Resolving The Sound // Zero Volume Prevents An OpenAL Source From Being Allocated While Still Resolving The Sound
media_audio_play(source.c_str(), name.c_str(), 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f); media_audio_play(source.c_str(), name.c_str(), 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f);