Merge pull request #1 from OmniTroid/master

¯\_(ツ)_/¯
This commit is contained in:
David Skoland 2017-01-23 18:46:49 +01:00 committed by GitHub
commit ea9ba4526d
12 changed files with 107 additions and 53 deletions

View File

@ -20,7 +20,6 @@ SOURCES += main.cpp\
aoimage.cpp \ aoimage.cpp \
file_functions.cpp \ file_functions.cpp \
aobutton.cpp \ aobutton.cpp \
global_variables.cpp \
debug_functions.cpp \ debug_functions.cpp \
networkmanager.cpp \ networkmanager.cpp \
aoapplication.cpp \ aoapplication.cpp \
@ -29,7 +28,8 @@ SOURCES += main.cpp\
hex_functions.cpp \ hex_functions.cpp \
encryption_functions.cpp \ encryption_functions.cpp \
courtroom.cpp \ courtroom.cpp \
aocharbutton.cpp aocharbutton.cpp \
hardware_functions.cpp
HEADERS += lobby.h \ HEADERS += lobby.h \
text_file_functions.h \ text_file_functions.h \
@ -37,7 +37,6 @@ HEADERS += lobby.h \
aoimage.h \ aoimage.h \
file_functions.h \ file_functions.h \
aobutton.h \ aobutton.h \
global_variables.h \
debug_functions.h \ debug_functions.h \
networkmanager.h \ networkmanager.h \
aoapplication.h \ aoapplication.h \
@ -46,4 +45,5 @@ HEADERS += lobby.h \
hex_functions.h \ hex_functions.h \
encryption_functions.h \ encryption_functions.h \
courtroom.h \ courtroom.h \
aocharbutton.h aocharbutton.h \
hardware_functions.h

View File

@ -28,6 +28,8 @@ void AOApplication::construct_lobby()
w_lobby = new Lobby(this); w_lobby = new Lobby(this);
lobby_constructed = true; lobby_constructed = true;
w_lobby->show();
} }
void AOApplication::destruct_lobby() void AOApplication::destruct_lobby()

View File

@ -5,7 +5,7 @@
#include <QFile> #include <QFile>
AOCharButton::AOCharButton(QWidget *parent, AOApplication *p_ao_app) AOCharButton::AOCharButton(QWidget *parent, AOApplication *p_ao_app) : QPushButton(parent)
{ {
m_parent = parent; m_parent = parent;

View File

@ -83,8 +83,22 @@ Courtroom::Courtroom(AOApplication *p_ao_app) : QMainWindow()
ui_char_select_background = new AOImage(this, ao_app); ui_char_select_background = new AOImage(this, ao_app);
//T0D0: allocate and position charbuttons //setting up the grid and positions
//QVector<AOCharButton*> ui_char_button_list; const int base_x_pos{25};
const int base_y_pos{36};
const int x_modifier{67};
int x_mod_count{0};
const int y_modifier{67};
int y_mod_count{0};
for (int n = 0 ; n < 90 ; ++n)
{
ui_char_button_list.append(new AOCharButton(ui_char_select_background, ao_app));
}
ui_char_select_background->hide();
ui_selector = new AOImage(ui_char_select_background, ao_app); ui_selector = new AOImage(ui_char_select_background, ao_app);
@ -96,12 +110,15 @@ Courtroom::Courtroom(AOApplication *p_ao_app) : QMainWindow()
connect(ui_reload_theme, SIGNAL(clicked()), this, SLOT(on_reload_theme_clicked())); connect(ui_reload_theme, SIGNAL(clicked()), this, SLOT(on_reload_theme_clicked()));
connect(ui_back_to_lobby, SIGNAL(clicked()), this, SLOT(on_back_to_lobby_clicked()));
set_widgets(); set_widgets();
} }
void Courtroom::set_widgets() void Courtroom::set_widgets()
{ {
this->setFixedSize(m_courtroom_width, m_courtroom_height); this->setFixedSize(m_courtroom_width, m_courtroom_height);
this->setWindowTitle("Attorney Online 2: Server name here");
ui_background->set_image("courtroombackground.png"); ui_background->set_image("courtroombackground.png");
ui_background->move(0, 0); ui_background->move(0, 0);
@ -146,10 +163,10 @@ void Courtroom::set_widgets()
set_size_and_pos(ui_ooc_toggle, "ooc_toggle"); set_size_and_pos(ui_ooc_toggle, "ooc_toggle");
set_size_and_pos(ui_witness_testimony, "witness testimony"); set_size_and_pos(ui_witness_testimony, "witness_testimony");
set_size_and_pos(ui_cross_examination, "cross_examination"); set_size_and_pos(ui_cross_examination, "cross_examination");
set_size_and_pos(ui_change_character, "change_character"; set_size_and_pos(ui_change_character, "change_character");
set_size_and_pos(ui_reload_theme, "reload_theme"); set_size_and_pos(ui_reload_theme, "reload_theme");
ui_reload_theme->setText("Reload theme"); ui_reload_theme->setText("Reload theme");
@ -185,14 +202,19 @@ void Courtroom::set_widgets()
ui_char_select_background->move(0, 0); ui_char_select_background->move(0, 0);
ui_char_select_background->resize(m_courtroom_width, m_courtroom_height); ui_char_select_background->resize(m_courtroom_width, m_courtroom_height);
QVector<AOCharButton*> ui_char_button_list; //T0D0: uncomment and set position properly
AOImage *ui_selector; //QVector<AOCharButton*> ui_char_button_list;
AOButton *ui_back_to_lobby; ui_selector->set_image("selector.png");
ui_selector->hide();
QLineEdit *ui_char_password; ui_back_to_lobby->setText("Back to Lobby");
set_size_and_pos(ui_back_to_lobby, "back_to_lobby");
AOButton *ui_spectator; set_size_and_pos(ui_char_password, "char_password");
ui_spectator->setText("spectator");
set_size_and_pos(ui_spectator, "spectator");
} }
@ -227,6 +249,12 @@ void Courtroom::on_reload_theme_clicked()
set_widgets(); set_widgets();
} }
void Courtroom::on_back_to_lobby_clicked()
{
ao_app->construct_lobby();
ao_app->destruct_courtroom();
}
Courtroom::~Courtroom() Courtroom::~Courtroom()
{ {

View File

@ -123,6 +123,8 @@ private:
private slots: private slots:
void on_reload_theme_clicked(); void on_reload_theme_clicked();
void on_back_to_lobby_clicked();
}; };
#endif // COURTROOM_H #endif // COURTROOM_H

View File

@ -1,8 +0,0 @@
#include "global_variables.h"
#include "text_file_functions.h"
const int RELEASE = 2;
const int MAJOR_VERSION = 1;
const int MINOR_VERSION = 0;
QString g_user_theme = "default";

View File

@ -1,8 +0,0 @@
#ifndef GLOBAL_VARIABLES_H
#define GLOBAL_VARIABLES_H
#include <QString>
#endif // GLOBAL_VARIABLES_H

34
hardware_functions.cpp Normal file
View File

@ -0,0 +1,34 @@
#include "hardware_functions.h"
#if (defined (_WIN32) || defined (_WIN64))
DWORD dwVolSerial;
BOOL bIsRetrieved;
QString get_hdid()
{
bIsRetrieved = GetVolumeInformation(TEXT("C:\\"), NULL, NULL, &dwVolSerial, NULL, NULL, NULL, NULL);
if (bIsRetrieved)
return QString::number(dwVolSerial, 16);
else
return "invalid_windows_hd"; //what could possibly go wrong
}
#elif (defined (LINUX) || defined (__linux__))
QString get_hdid()
{
//T0D0: add linux implementation
return "linux_os_hdid";
}
#else
QString get_hdid()
{
//T0D0: find a sane way to handle this
return "unknown_os_hdid";
}
#endif

14
hardware_functions.h Normal file
View File

@ -0,0 +1,14 @@
#ifndef WIN32_FUNCTIONS_H
#define WIN32_FUNCTIONS_H
#include <QString>
#ifdef Q_OS_WIN32
#include <windows.h>
#endif // Q_OS_WIN32
#include <stdio.h>
QString get_hdid();
#endif // WIN32_FUNCTIONS_H

View File

@ -14,7 +14,6 @@ Lobby::Lobby(AOApplication *p_ao_app) : QMainWindow()
ao_app = p_ao_app; ao_app = p_ao_app;
this->setWindowTitle("Attorney Online 2"); this->setWindowTitle("Attorney Online 2");
this->resize(m_lobby_width, m_lobby_height);
this->setFixedSize(m_lobby_width, m_lobby_height); this->setFixedSize(m_lobby_width, m_lobby_height);
ui_background = new AOImage(this, ao_app); ui_background = new AOImage(this, ao_app);
@ -167,18 +166,6 @@ void Lobby::on_add_to_fav_released()
return; return;
ao_app->add_favorite_server(ui_server_list->currentRow()); ao_app->add_favorite_server(ui_server_list->currentRow());
/*
if (n_server < 0 || n_server >= ao_app->get_server_list().size())
return;
server_type fav_server = ao_app->get_server_list().at(n_server);
QString str_port = QString::number(fav_server.port);
QString server_line = fav_server.ip + ":" + str_port + ":" + fav_server.name;
write_to_serverlist_txt(server_line);
*/
} }
void Lobby::on_connect_pressed() void Lobby::on_connect_pressed()

View File

@ -9,13 +9,13 @@
int main(int argc, char *argv[]) int main(int argc, char *argv[])
{ {
AOApplication::setAttribute(Qt::AA_EnableHighDpiScaling); AOApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
AOApplication main_app(argc, argv); AOApplication main_app(argc, argv);
main_app.construct_lobby(); main_app.construct_lobby();
main_app.net_manager->connect_to_master(); main_app.net_manager->connect_to_master();
AOPacket *f_packet = new AOPacket("ALL#%"); AOPacket *f_packet = new AOPacket("ALL#%");
main_app.send_ms_packet(f_packet); main_app.send_ms_packet(f_packet);
main_app.w_lobby->show(); main_app.w_lobby->show();
return main_app.exec(); return main_app.exec();
} }

View File

@ -3,6 +3,7 @@
#include "lobby.h" #include "lobby.h"
#include "networkmanager.h" #include "networkmanager.h"
#include "encryption_functions.h" #include "encryption_functions.h"
#include "hardware_functions.h"
#include <QDebug> #include <QDebug>
@ -85,9 +86,10 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
//you may ask where 322 comes from. that would be a good question. //you may ask where 322 comes from. that would be a good question.
s_decryptor = fanta_decrypt(f_contents.at(0), 322).toUInt(); s_decryptor = fanta_decrypt(f_contents.at(0), 322).toUInt();
//T0D0 add an actual HDID here QString f_hdid;
AOPacket *hi_packet = new AOPacket("HI#ao2testinginprogressdontmindme#%"); f_hdid = get_hdid();
AOPacket *hi_packet = new AOPacket("HI#" + f_hdid + "#%");
send_server_packet(hi_packet); send_server_packet(hi_packet);
delete hi_packet; delete hi_packet;
@ -97,6 +99,7 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
if (f_contents.size() < 1) if (f_contents.size() < 1)
return; return;
//T0D0: save server version here, somehow(it's in the HI# packet usually)
} }
else if (header == "CT") else if (header == "CT")
{ {