commit
c42ffb4047
@ -34,6 +34,7 @@ settings.Load Speed=Скорость Загрузки
|
|||||||
settings.Fog Curve=Кривая Тумана
|
settings.Fog Curve=Кривая Тумана
|
||||||
settings.Backlight=Подсветка
|
settings.Backlight=Подсветка
|
||||||
settings.V-Sync=Вертикальная Синхронизация
|
settings.V-Sync=Вертикальная Синхронизация
|
||||||
|
settings.Camera Shaking=Тряска Камеры
|
||||||
|
|
||||||
settings.FOV=Поле Зрения
|
settings.FOV=Поле Зрения
|
||||||
settings.Mouse Sensitivity=Чувствительность Мыши
|
settings.Mouse Sensitivity=Чувствительность Мыши
|
||||||
|
|||||||
@ -15,21 +15,23 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
bool is_big_endian(void){
|
bool is_big_endian(void){
|
||||||
union {
|
uint32_t ui32_v = 0x01020304;
|
||||||
uint32_t i;
|
char bytes[sizeof(uint32_t)];
|
||||||
char c[4];
|
std::memcpy(bytes, &ui32_v, sizeof(uint32_t));
|
||||||
} bint = {0x01020304};
|
|
||||||
|
|
||||||
return bint.c[0] == 1;
|
return bytes[0] == 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
std::int32_t convert_to_int(char* buffer, std::size_t len){
|
std::int32_t convert_to_int(char* buffer, std::size_t len){
|
||||||
std::int32_t a = 0;
|
std::int32_t a = 0;
|
||||||
if(!is_big_endian())
|
if (!is_big_endian()) {
|
||||||
std::memcpy(&a, buffer, len);
|
std::memcpy(&a, buffer, len);
|
||||||
else
|
}
|
||||||
for(std::size_t i = 0; i < len; ++i)
|
else {
|
||||||
|
for (std::size_t i = 0; i < len; ++i) {
|
||||||
reinterpret_cast<char*>(&a)[3 - i] = buffer[i];
|
reinterpret_cast<char*>(&a)[3 - i] = buffer[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
return a;
|
return a;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
#include "panels.h"
|
#include "panels.h"
|
||||||
|
|
||||||
#include <stdexcept>
|
#include <stdexcept>
|
||||||
|
#include <algorithm>
|
||||||
|
|
||||||
#include "../../window/Window.h"
|
#include "../../window/Window.h"
|
||||||
#include "../../assets/Assets.h"
|
#include "../../assets/Assets.h"
|
||||||
|
|||||||
@ -596,6 +596,19 @@ void create_settings_panel(Engine* engine) {
|
|||||||
panel->add(checkbox);
|
panel->add(checkbox);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Camera shaking checkbox */ {
|
||||||
|
auto checkbox = std::make_shared<FullCheckBox>(
|
||||||
|
langs::get(L"Camera Shaking", L"settings"), vec2(400, 32)
|
||||||
|
);
|
||||||
|
checkbox->setSupplier([=]() {
|
||||||
|
return engine->getSettings().camera.shaking;
|
||||||
|
});
|
||||||
|
checkbox->setConsumer([=](bool checked) {
|
||||||
|
engine->getSettings().camera.shaking = checked;
|
||||||
|
});
|
||||||
|
panel->add(checkbox);
|
||||||
|
}
|
||||||
|
|
||||||
std::string langName = langs::locales_info.at(langs::current->getId()).name;
|
std::string langName = langs::locales_info.at(langs::current->getId()).name;
|
||||||
panel->add(guiutil::gotoButton(
|
panel->add(guiutil::gotoButton(
|
||||||
langs::get(L"Language", L"settings")+L": "+
|
langs::get(L"Language", L"settings")+L": "+
|
||||||
|
|||||||
@ -1,4 +1,7 @@
|
|||||||
#include "Inventories.h"
|
#include "Inventories.h"
|
||||||
|
|
||||||
|
#include <algorithm>
|
||||||
|
|
||||||
#include "../world/Level.h"
|
#include "../world/Level.h"
|
||||||
#include "../world/World.h"
|
#include "../world/World.h"
|
||||||
|
|
||||||
@ -18,7 +21,7 @@ std::shared_ptr<Inventory> Inventories::create(size_t size) {
|
|||||||
std::shared_ptr<Inventory> Inventories::createVirtual(size_t size) {
|
std::shared_ptr<Inventory> Inventories::createVirtual(size_t size) {
|
||||||
int64_t id;
|
int64_t id;
|
||||||
do {
|
do {
|
||||||
id = -std::max(1L, std::abs(random.rand64()));
|
id = -std::max<int64_t>(1LL, std::llabs(random.rand64()));
|
||||||
} while (map.find(id) != map.end());
|
} while (map.find(id) != map.end());
|
||||||
|
|
||||||
auto inv = std::make_shared<Inventory>(id, size);
|
auto inv = std::make_shared<Inventory>(id, size);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user