aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Skoland <davidskoland@gmail.com>2017-01-23 18:46:49 +0100
committerGitHub <noreply@github.com>2017-01-23 18:46:49 +0100
commitea9ba4526dc313a61682ec41b3b052019051545e (patch)
tree328b9baa8b44fa62a7b63ca9dd8a2111cbd6c088
parentccc62647b3ed2df4a650c8aa7ae9d8e43b5dfae1 (diff)
parent6b85266e869630fd642476dfd05627109b2cc7e3 (diff)
Merge pull request #1 from OmniTroid/master
¯\_(ツ)_/¯
-rw-r--r--Attorney_Online_remake.pro8
-rw-r--r--aoapplication.cpp2
-rw-r--r--aocharbutton.cpp2
-rw-r--r--courtroom.cpp46
-rw-r--r--courtroom.h2
-rw-r--r--global_variables.cpp8
-rw-r--r--global_variables.h8
-rw-r--r--hardware_functions.cpp34
-rw-r--r--hardware_functions.h14
-rw-r--r--lobby.cpp13
-rw-r--r--main.cpp16
-rw-r--r--packet_distribution.cpp7
12 files changed, 107 insertions, 53 deletions
diff --git a/Attorney_Online_remake.pro b/Attorney_Online_remake.pro
index a51e1f60..0ce693ab 100644
--- a/Attorney_Online_remake.pro
+++ b/Attorney_Online_remake.pro
@@ -20,7 +20,6 @@ SOURCES += main.cpp\
aoimage.cpp \
file_functions.cpp \
aobutton.cpp \
- global_variables.cpp \
debug_functions.cpp \
networkmanager.cpp \
aoapplication.cpp \
@@ -29,7 +28,8 @@ SOURCES += main.cpp\
hex_functions.cpp \
encryption_functions.cpp \
courtroom.cpp \
- aocharbutton.cpp
+ aocharbutton.cpp \
+ hardware_functions.cpp
HEADERS += lobby.h \
text_file_functions.h \
@@ -37,7 +37,6 @@ HEADERS += lobby.h \
aoimage.h \
file_functions.h \
aobutton.h \
- global_variables.h \
debug_functions.h \
networkmanager.h \
aoapplication.h \
@@ -46,4 +45,5 @@ HEADERS += lobby.h \
hex_functions.h \
encryption_functions.h \
courtroom.h \
- aocharbutton.h
+ aocharbutton.h \
+ hardware_functions.h
diff --git a/aoapplication.cpp b/aoapplication.cpp
index 87525a80..70aeb152 100644
--- a/aoapplication.cpp
+++ b/aoapplication.cpp
@@ -28,6 +28,8 @@ void AOApplication::construct_lobby()
w_lobby = new Lobby(this);
lobby_constructed = true;
+
+ w_lobby->show();
}
void AOApplication::destruct_lobby()
diff --git a/aocharbutton.cpp b/aocharbutton.cpp
index 79dc4e8a..41a4f402 100644
--- a/aocharbutton.cpp
+++ b/aocharbutton.cpp
@@ -5,7 +5,7 @@
#include <QFile>
-AOCharButton::AOCharButton(QWidget *parent, AOApplication *p_ao_app)
+AOCharButton::AOCharButton(QWidget *parent, AOApplication *p_ao_app) : QPushButton(parent)
{
m_parent = parent;
diff --git a/courtroom.cpp b/courtroom.cpp
index 72b53d18..f0ad216e 100644
--- a/courtroom.cpp
+++ b/courtroom.cpp
@@ -83,8 +83,22 @@ Courtroom::Courtroom(AOApplication *p_ao_app) : QMainWindow()
ui_char_select_background = new AOImage(this, ao_app);
- //T0D0: allocate and position charbuttons
- //QVector<AOCharButton*> ui_char_button_list;
+ //setting up the grid and positions
+ 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);
@@ -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_back_to_lobby, SIGNAL(clicked()), this, SLOT(on_back_to_lobby_clicked()));
+
set_widgets();
}
void Courtroom::set_widgets()
{
this->setFixedSize(m_courtroom_width, m_courtroom_height);
+ this->setWindowTitle("Attorney Online 2: Server name here");
ui_background->set_image("courtroombackground.png");
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_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_change_character, "change_character";
+ set_size_and_pos(ui_change_character, "change_character");
set_size_and_pos(ui_reload_theme, "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->resize(m_courtroom_width, m_courtroom_height);
- QVector<AOCharButton*> ui_char_button_list;
- AOImage *ui_selector;
+ //T0D0: uncomment and set position properly
+ //QVector<AOCharButton*> ui_char_button_list;
+
+ ui_selector->set_image("selector.png");
+ ui_selector->hide();
- AOButton *ui_back_to_lobby;
+ ui_back_to_lobby->setText("Back to Lobby");
+ set_size_and_pos(ui_back_to_lobby, "back_to_lobby");
- QLineEdit *ui_char_password;
+ set_size_and_pos(ui_char_password, "char_password");
- AOButton *ui_spectator;
+ ui_spectator->setText("spectator");
+ set_size_and_pos(ui_spectator, "spectator");
}
@@ -227,6 +249,12 @@ void Courtroom::on_reload_theme_clicked()
set_widgets();
}
+void Courtroom::on_back_to_lobby_clicked()
+{
+ ao_app->construct_lobby();
+ ao_app->destruct_courtroom();
+}
+
Courtroom::~Courtroom()
{
diff --git a/courtroom.h b/courtroom.h
index e0dee82f..dee5401d 100644
--- a/courtroom.h
+++ b/courtroom.h
@@ -123,6 +123,8 @@ private:
private slots:
void on_reload_theme_clicked();
+ void on_back_to_lobby_clicked();
+
};
#endif // COURTROOM_H
diff --git a/global_variables.cpp b/global_variables.cpp
deleted file mode 100644
index b3a7e125..00000000
--- a/global_variables.cpp
+++ /dev/null
@@ -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";
diff --git a/global_variables.h b/global_variables.h
deleted file mode 100644
index 941ac49f..00000000
--- a/global_variables.h
+++ /dev/null
@@ -1,8 +0,0 @@
-#ifndef GLOBAL_VARIABLES_H
-#define GLOBAL_VARIABLES_H
-
-#include <QString>
-
-
-
-#endif // GLOBAL_VARIABLES_H
diff --git a/hardware_functions.cpp b/hardware_functions.cpp
new file mode 100644
index 00000000..ce6e35a6
--- /dev/null
+++ b/hardware_functions.cpp
@@ -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
diff --git a/hardware_functions.h b/hardware_functions.h
new file mode 100644
index 00000000..7508a5a6
--- /dev/null
+++ b/hardware_functions.h
@@ -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
diff --git a/lobby.cpp b/lobby.cpp
index 17cae5fc..414ce933 100644
--- a/lobby.cpp
+++ b/lobby.cpp
@@ -14,7 +14,6 @@ Lobby::Lobby(AOApplication *p_ao_app) : QMainWindow()
ao_app = p_ao_app;
this->setWindowTitle("Attorney Online 2");
- this->resize(m_lobby_width, m_lobby_height);
this->setFixedSize(m_lobby_width, m_lobby_height);
ui_background = new AOImage(this, ao_app);
@@ -167,18 +166,6 @@ void Lobby::on_add_to_fav_released()
return;
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()
diff --git a/main.cpp b/main.cpp
index f1e42fd4..2116b52a 100644
--- a/main.cpp
+++ b/main.cpp
@@ -9,13 +9,13 @@
int main(int argc, char *argv[])
{
- AOApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
- AOApplication main_app(argc, argv);
- main_app.construct_lobby();
- main_app.net_manager->connect_to_master();
- AOPacket *f_packet = new AOPacket("ALL#%");
- main_app.send_ms_packet(f_packet);
- main_app.w_lobby->show();
+ AOApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
+ AOApplication main_app(argc, argv);
+ main_app.construct_lobby();
+ main_app.net_manager->connect_to_master();
+ AOPacket *f_packet = new AOPacket("ALL#%");
+ main_app.send_ms_packet(f_packet);
+ main_app.w_lobby->show();
- return main_app.exec();
+ return main_app.exec();
}
diff --git a/packet_distribution.cpp b/packet_distribution.cpp
index 4e02fb46..5250dfab 100644
--- a/packet_distribution.cpp
+++ b/packet_distribution.cpp
@@ -3,6 +3,7 @@
#include "lobby.h"
#include "networkmanager.h"
#include "encryption_functions.h"
+#include "hardware_functions.h"
#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.
s_decryptor = fanta_decrypt(f_contents.at(0), 322).toUInt();
- //T0D0 add an actual HDID here
- AOPacket *hi_packet = new AOPacket("HI#ao2testinginprogressdontmindme#%");
+ QString f_hdid;
+ f_hdid = get_hdid();
+ AOPacket *hi_packet = new AOPacket("HI#" + f_hdid + "#%");
send_server_packet(hi_packet);
delete hi_packet;
@@ -97,6 +99,7 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
if (f_contents.size() < 1)
return;
+ //T0D0: save server version here, somehow(it's in the HI# packet usually)
}
else if (header == "CT")
{