Launcher Patch

This commit is contained in:
wishu
2022-04-24 07:08:34 +10:00
parent 4d69a0ab9c
commit 29a7e5a6d9
100 changed files with 695 additions and 40196 deletions

View File

@@ -6,6 +6,39 @@ import (
"golang.org/x/crypto/bcrypt"
)
func (s *Server) newUserChara(username string) error {
var id int
err := s.db.QueryRow("SELECT id FROM users WHERE username = $1", username).Scan(&id)
if err != nil {
return err
}
var numNewChars int
err = s.db.QueryRow("SELECT COUNT(*) FROM characters WHERE user_id = $1 AND is_new_character = true", id).Scan(&numNewChars)
if err != nil {
return err
}
// prevent users with an uninitialised character from creating more
if numNewChars >= 1 {
return err
}
_, err = s.db.Exec(`
INSERT INTO characters (
user_id, is_female, is_new_character, small_gr_level, gr_override_mode, name, unk_desc_string,
gr_override_level, gr_override_unk0, gr_override_unk1, exp, weapon, last_login)
VALUES($1, False, True, 0, True, '', '', 0, 0, 0, 0, 0, $2)`,
id,
uint32(time.Now().Unix()),
)
if err != nil {
return err
}
return nil
}
func (s *Server) registerDBAccount(username string, password string) error {
// Create salted hash of user password
passwordHash, err := bcrypt.GenerateFromPassword([]byte(password), bcrypt.DefaultCost)

View File

@@ -85,6 +85,13 @@ func (s *Session) handleDSGNRequest(bf *byteframe.ByteFrame) error {
zap.String("reqUnk", reqUnk),
)
newCharaReq := false
if reqUsername[len(reqUsername) - 1] == 43 { // '+'
reqUsername = reqUsername[:len(reqUsername) - 1]
newCharaReq = true
}
// TODO(Andoryuuta): remove plaintext password storage if this ever becomes more than a toy project.
var (
id int
@@ -123,6 +130,14 @@ func (s *Session) handleDSGNRequest(bf *byteframe.ByteFrame) error {
default:
if bcrypt.CompareHashAndPassword([]byte(password), []byte(reqPassword)) == nil {
s.logger.Info("Passwords match!")
if newCharaReq {
err = s.server.newUserChara(reqUsername)
if err != nil {
s.logger.Info("Error on adding new character to account", zap.Error(err))
serverRespBytes = makeSignInFailureResp(SIGN_EABORT)
break
}
}
serverRespBytes = s.makeSignInResp(id)
} else {
s.logger.Info("Passwords don't match!")

Binary file not shown.

Binary file not shown.

View File

@@ -1,42 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<!-- To dev i recommand to enable this
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>
<meta http-equiv='cache-control' content='no-cache'>-->
<!-- Disable it if you Dev -->
<!-- 7 Days (604800 seconds)-->
<meta http-equiv='cache-control' content='max-age=604800, stale-while-revalidate=604800'>
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1" />
<title>MHFZZ launcher</title>
<link rel="stylesheet" href="css/dependencies/bootstrap.min.css">
<link rel="stylesheet" href="css/charsel.css">
<script type="text/javascript" src="js/dependencies/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="js/dependencies/bootstrap.bundle.min.js"></script>
<script type="text/javascript" src="js/utilities/audio.js"></script>
<script type="text/javascript" src="js/charsel.js"></script>
</head>
<body>
<div class="BlockNull" style="height: 30px;"></div>
<div class="container" style="height: 250px;">
<div class="row">
<div class="col-12" >
<div id="characterlist" class="list-group char-select-list"></div>
</div>
</div>
<div class="row" style="position: relative; top: 30px;">
<div class="col-12" style="height: 100%;">
<button id="bt_delete_char" class="btn btn-primary" onclick="CUE_Selected();" onmouseover="CUE_Cursor()">Delete</button>
<button id="bt_new_char" class="btn btn-primary" onclick="CUE_Selected()" onmouseover="CUE_Cursor()">Add New Character</button>
<button id="bt_confirm" class="btn btn-primary" onclick="CUE_Starting();" onmouseover="CUE_Cursor()">START</button>
</div>
</div>
<button id="bt_up_char_list" class="btn btn-primary" onclick="CUE_Selected();" onmouseover="CUE_Cursor()"></button>
<button id="bt_down_char_list" class="btn btn-primary" onclick="CUE_Selected();" onmouseover="CUE_Cursor()"></button>
</div>
<script async type="text/javascript" src="js/utilities/scroll.js"></script>
</body>
</html>

View File

@@ -1,281 +0,0 @@
@font-face {
font-family: 'ms-pgothic';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(./font/ms-pgothic.woff2) format('woff2');
unicode-range: U+25ee8, U+25f23, U+25f5c, U+25fd4, U+25fe0, U+25ffb, U+2600c, U+26017, U+26060, U+260ed, U+26222, U+2626a, U+26270, U+26286, U+2634c, U+26402, U+2667e, U+266b0, U+2671d, U+268dd, U+268ea, U+26951, U+2696f, U+26999, U+269dd, U+26a1e, U+26a58, U+26a8c, U+26ab7, U+26aff, U+26c29, U+26c73, U+26c9e, U+26cdd, U+26e40, U+26e65, U+26f94, U+26ff6-26ff8, U+270f4, U+2710d, U+27139, U+273da-273db, U+273fe, U+27410, U+27449, U+27614-27615, U+27631, U+27684, U+27693, U+2770e, U+27723, U+27752, U+278b2, U+27985, U+279b4, U+27a84, U+27bb3, U+27bbe, U+27bc7, U+27c3c, U+27cb8, U+27d73, U+27da0, U+27e10, U+27eaf, U+27fb7, U+2808a, U+280bb, U+28277, U+28282, U+282f3, U+283cd, U+2840c, U+28455, U+284dc, U+2856b, U+285c8-285c9, U+286d7, U+286fa, U+28946, U+28949, U+2896b, U+28987-28988, U+289ba-289bb, U+28a1e, U+28a29, U+28a43, U+28a71, U+28a99, U+28acd, U+28add, U+28ae4, U+28bc1, U+28bef, U+28cdd, U+28d10, U+28d71, U+28dfb, U+28e0f, U+28e17, U+28e1f, U+28e36, U+28e89, U+28eeb, U+28ef6, U+28f32, U+28ff8, U+292a0, U+292b1, U+29490, U+295cf, U+2967f, U+296f0, U+29719, U+29750, U+29810, U+298c6, U+29a72, U+29d4b, U+29ddb, U+29e15, U+29e3d, U+29e49, U+29e8a, U+29ec4, U+29edb, U+29ee9, U+29fce, U+29fd7, U+2a01a, U+2a02f, U+2a082, U+2a0f9, U+2a190, U+2a2b2, U+2a38c, U+2a437, U+2a5f1, U+2a602, U+2a61a, U+2a6b2, U+2a9e6, U+2b746, U+2b751, U+2b753, U+2b75a, U+2b75c, U+2b765, U+2b776-2b777, U+2b77c, U+2b782, U+2b789, U+2b78b, U+2b78e, U+2b794, U+2b7ac, U+2b7af, U+2b7bd, U+2b7c9, U+2b7cf, U+2b7d2, U+2b7d8, U+2b7f0, U+2b80d, U+2b817, U+2b81a, U+2d544, U+2e278, U+2e569, U+2e6ea, U+2f804, U+2f80f, U+2f815, U+2f818, U+2f81a, U+2f822, U+2f828, U+2f82c, U+2f833, U+2f83f, U+2f846, U+2f852, U+2f862, U+2f86d, U+2f873, U+2f877, U+2f884, U+2f899-2f89a, U+2f8a6, U+2f8ac, U+2f8b2, U+2f8b6, U+2f8d3, U+2f8db-2f8dc, U+2f8e1, U+2f8e5, U+2f8ea, U+2f8ed, U+2f8fc, U+2f903, U+2f90b, U+2f90f, U+2f91a, U+2f920-2f921, U+2f945, U+2f947, U+2f96c, U+2f995, U+2f9d0, U+2f9de-2f9df, U+2f9f4;
}
body {
background-color: rgba(0, 0, 0, 0);
}
html,body {
height: 100%;
overflow:hidden;
}
.Name_Player {
position: relative;
bottom: 11px;
text-align: center;
width: 100%;
}
.h1, h1 {
font-size: 30px;
}
.list-group-item.active {
z-index: 2;
color: rgba(255,255,255,1);
background-color: rgba(0,0,0,0);
border-color: rgba(0,0,0,0);
}
#icon_weapon {
position: relative;
top:1px;
left: 10px;
width: 48px;
height: 48px;
}
#weapon_title {
position: relative;
left: 70px;
bottom: 46px;
width: 130px;
font-weight: bold;
font-size: 16px;
}
#weapon_name {
text-align: center;
position: relative;
left: 66px;
bottom: 50px;
width: 130px;
font-size: 16px;
font-weight: bold;
}
#hr_lvl {
position: relative;
bottom: 97px;
left: 225px;
width: 50px;
}
#gr_lvl {
position: relative;
bottom: 116.5px;
left: 270px;
width: 50px;
}
#sex{
position: relative;
bottom: 136px;
left: 315px;
width: 14px;
}
#uid {
position: relative;
bottom: 140px;
left: 225px;
width: 135px;
}
#lastlogin {
display: block;
width: 200px;
position: relative;
bottom: 145px;
left: 225px;
}
.Info {
position: relative;
bottom: 10px;
right: 8px;
width: 377px;
height: 49px;
font-size:13px;
}
#BlockNull{
height:50px;
}
.char-select-list {
display:block;
margin-left: 61px;
width: 25em;
height: 100px;
overflow-y: hidden;
}
.char-list-entry {
background-image: url(../ressources/bt_charsel.jpg);
overflow: hidden!important;
background-color: rgba(0,0,0,0);
Height: 100px;
width: 398px;
}
input[readonly] {
pointer-events: none;
}
:-ms-input-placeholder.form-control {
color: rgba(255,255,255,0.9);
}
input, select, textarea{
color: #ff0000;
}
.btn-primary{
color: #fff;
border-color: rgba(0,0,0,0)!important;;
background-color: rgba(0,0,0,0)!important;
box-shadow:0px 0px 0px rgba(0,0,0,0)!important;
height: 100%;
width: 100%;
}
.btn-primary.focus, .btn-primary:focus{
color: #fff;
border-color: rgba(0,0,0,0);
background-color: rgba(0,0,0,0);
height: 100%;
width: 100%;
box-shadow:0px 0px 0px rgba(0,0,0,0);
}
.btn-primary:active{
background-color: rgba(0,0,0,0);
}
.btn-primary:hover {
color: #fff;
border-color: rgba(0,0,0,0);
background-color: rgba(0,0,0,0);
height: 100%;
width: 100%;
}
#bt_confirm {
background: url(../ressources/bt_launch.png) no-repeat scroll 0 0 transparent;
position: relative;
top: 10px;
left: 102px;
color: rgba(200,200,200,1);
cursor: pointer;
font-weight: bold;
height: 74px;
width: 308px;
}
#bt_confirm:hover{
background: url(../ressources/bt_launch_hover.png) no-repeat scroll 0 0 transparent;
position: relative;
top: 10px;
left: 102px;
color: rgba(255,255,255,1);
cursor: pointer;
font-weight: bold;
height: 74px;
width: 308px;
}
#bt_new_char {
background: url(../ressources/bt_sub.png) no-repeat scroll 0 0 transparent;
background-size: 167px 33px;
position: relative;
top: 6px;
right: 81px;
color: rgba(200,200,200,1);
cursor: pointer;
font-size: 11px;
height: 33px;
width: 167px;
}
#bt_new_char:hover{
background: url(../ressources/bt_sub_hover.png) no-repeat scroll 0 0 transparent;
background-size: 167px 33px;
position: relative;
top: 6px;
right: 81px;
color: rgba(255,255,255,1);
cursor: pointer;
font-size: 11px;
height: 33px;
width: 167px;
}
#bt_delete_char {
background: url(../ressources/bt_sub.png) no-repeat scroll 0 0 transparent;
background-size: 167px 33px;
position: relative;
top: 6px;
left: 262px;
color: rgba(200,200,200,1);
cursor: pointer;
font-size: 11px;
height: 33px;
width: 167px;
}
#bt_delete_char:hover{
background: url(../ressources/bt_sub_hover.png) no-repeat scroll 0 0 transparent;
background-size: 167px 33px;
position: relative;
top: 6px;
left: 262px;
color: rgba(255,255,255,1);
cursor: pointer;
font-size: 11px;
height: 33px;
width: 167px;
}
#bt_up_char_list {
background: url(../ressources/bt_up_charsel.png) no-repeat scroll 0 0 transparent;
position: absolute;
top: 0px;
left: 232px;
width: 91px;
height: 25px;
}
#bt_up_char_list:hover {
background: url(../ressources/bt_up_charsel_hover.png) no-repeat scroll 0 0 transparent;
position: absolute;
top: 0px;
left: 232px;
width: 91px;
height: 25px;
}
#bt_down_char_list {
background: url(../ressources/bt_down_charsel.png) no-repeat scroll 0 0 transparent;
position: absolute;
top: 133px;
left: 230px;
width: 91px;
height: 25px;
}
#bt_down_char_list:hover {
background: url(../ressources/bt_down_charsel_hover.png) no-repeat scroll 0 0 transparent;
position: absolute;
top: 133px;
left: 230px;
width: 91px;
height: 25px;
}

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

View File

@@ -1,258 +0,0 @@
/*! Bootstrap 4 for IE8 - v4.3.1 */
/*! https://github.com/coliff/bootstrap-ie8 */
.card-group .card,
.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col-sm-1,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12,
.col-lg-1,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-xl-1,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.nav-link,
.list-group-horizontal,
.list-group-horizontal .list-group-item {
float: left;
}
.row,
.container-fluid,
.container,
section,
footer,
main,
aside,
.navbar-nav,
.navbar-collapse {
display: block;
}
.modal.fade .modal-dialog {
-ms-transform: translate(0, -25%);
}
.modal.show .modal-dialog {
-ms-transform: translate(0, 0);
}
.custom-select {
background-image: none;
padding-right: .75rem;
}
.img-fluid[src$=".svg"] {
width: 100%;
}
.table-responsive {
min-height: 0%;
} /* see https://github.com/twbs/bootstrap/issues/14837 */
.progress {
display: block;
}
.progress-bar {
float: left;
font-size: 12px;
line-height: 20px;
width: 0;
height: 100%;
}
.d-flex,
.d-sm-flex,
.d-md-flex,
.d-lg-flex,
.d-xl-flex,
.d-print-flex {
display: block !important;
}
.d-inline-flex,
.d-sm-inline-flex,
.d-md-inline-flex,
.d-lg-inline-flex,
.d-xl-inline-flex,
.d-print-inline-flex {
display: inline-block !important;
}
.flex-row .div {
display: inline-block;
}
.flex-row-reverse {
text-align: right;
}
.flex-row-reverse .div {
display: inline-block;
float: right;
}
.justify-content-start div {
display: inline-block;
}
.justify-content-end {
text-align: right;
}
.justify-content-end div {
display: inline-block;
margin-right: 0;
float: right;
}
.justify-content-center {
text-align: center;
}
.justify-content-center div {
display: inline-block;
margin-right: auto;
margin-left: auto;
text-align: center;
}
.justify-content-between {
text-justify: distribute-all-lines;
}
.justify-content-between div {
display: inline-block;
margin-right: auto;
margin-left: auto;
text-align: justify;
}
/* see https://stackoverflow.com/questions/6865194/fluid-width-with-equally-spaced-divs */
.justify-content-around {
text-align: justify;
text-justify: distribute-all-lines;
}
.justify-content-around div {
display: inline-block;
margin-right: auto;
margin-left: auto;
text-align: justify;
}
[class^="justify-content-"] div {
display: inline-block;
}
/** Carousel - Hide indicators and controls as the carousel doesn't work **/
.carousel-indicators,
.carousel-control-prev,
.carousel-control-next {
display: none;
}
.btn-link.disabled,
.btn-link:disabled {
text-decoration: none;
}
.modal-header .close {
margin: -48px -16px -16px auto;
}
.btn-group,
.btn-group-vertical {
display: inline;
vertical-align: baseline;
}
.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group,
.btn-group-vertical .btn + .btn,
.btn-group-vertical .btn + .btn-group,
.btn-group-vertical .btn-group + .btn,
.btn-group-vertical .btn-group + .btn-group {
margin-left: -5px;
}
.navbar-expand-sm .navbar-collapse,
.navbar-expand-md .navbar-collapse,
.navbar-expand-lg .navbar-collapse,
.navbar-expand-xl .navbar-collapse,
.navbar-expand .navbar-collapse {
display: block !important;
}
.navbar > .container,
.navbar > .container-fluid,
.nav,
.navbar {
display: block;
}
.nav-link {
padding: 8px 16px;
}
.navbar-brand {
padding-top: 5px;
padding-bottom: 5px;
margin-right: 16px;
font-size: 20px;
float: left;
}
.navbar:not(.navbar-expand-sm):not(.navbar-expand-md):not(.navbar-expand-lg):not(.navbar-expand-xl):not(.navbar-expand)
.nav-link {
float: none;
}
.form-group > .is-valid {
border-color: #28a745 !important;
}
.form-group > .is-invalid {
border-color: #dc3545 !important;
}
.form-control.is-valid ~ .valid-feedback,
.custom-select.is-valid ~ .valid-feedback,
.form-control-file.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-feedback,
.custom-control-input.is-valid ~ .valid-feedback,
.form-control.is-invalid ~ .invalid-feedback,
.custom-select.is-invalid ~ .invalid-feedback,
.form-control-file.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-feedback,
.custom-file-input.is-invalid ~ .invalid-feedback {
display: block;
}
.form-group > .is-valid:focus {
box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}
.form-group > .is-invalid:focus {
box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}
.custom-switch .custom-control-input:checked ~ .custom-control-label:after {
-ms-transform: translateX(0.75rem);
}

View File

@@ -1,331 +0,0 @@
/*!
* Bootstrap Reboot v4.1.3 (https://getbootstrap.com/)
* Copyright 2011-2018 The Bootstrap Authors
* Copyright 2011-2018 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
*/
*,
*::before,
*::after {
box-sizing: border-box;
}
html {
font-family: sans-serif;
line-height: 1.15;
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
-ms-overflow-style: scrollbar;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
@-ms-viewport {
width: device-width;
}
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
display: block;
}
body {
margin: 0;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
font-size: 1rem;
font-weight: 400;
line-height: 1.5;
color: #212529;
text-align: left;
background-color: #fff;
}
[tabindex="-1"]:focus {
outline: 0 !important;
}
hr {
box-sizing: content-box;
height: 0;
overflow: visible;
}
h1, h2, h3, h4, h5, h6 {
margin-top: 0;
margin-bottom: 0.5rem;
}
p {
margin-top: 0;
margin-bottom: 1rem;
}
abbr[title],
abbr[data-original-title] {
text-decoration: underline;
-webkit-text-decoration: underline dotted;
text-decoration: underline dotted;
cursor: help;
border-bottom: 0;
}
address {
margin-bottom: 1rem;
font-style: normal;
line-height: inherit;
}
ol,
ul,
dl {
margin-top: 0;
margin-bottom: 1rem;
}
ol ol,
ul ul,
ol ul,
ul ol {
margin-bottom: 0;
}
dt {
font-weight: 700;
}
dd {
margin-bottom: .5rem;
margin-left: 0;
}
blockquote {
margin: 0 0 1rem;
}
dfn {
font-style: italic;
}
b,
strong {
font-weight: bolder;
}
small {
font-size: 80%;
}
sub,
sup {
position: relative;
font-size: 75%;
line-height: 0;
vertical-align: baseline;
}
sub {
bottom: -.25em;
}
sup {
top: -.5em;
}
a {
color: #007bff;
text-decoration: none;
background-color: transparent;
-webkit-text-decoration-skip: objects;
}
a:hover {
color: #0056b3;
text-decoration: underline;
}
a:not([href]):not([tabindex]) {
color: inherit;
text-decoration: none;
}
a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
color: inherit;
text-decoration: none;
}
a:not([href]):not([tabindex]):focus {
outline: 0;
}
pre,
code,
kbd,
samp {
font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
font-size: 1em;
}
pre {
margin-top: 0;
margin-bottom: 1rem;
overflow: auto;
-ms-overflow-style: scrollbar;
}
figure {
margin: 0 0 1rem;
}
img {
vertical-align: middle;
border-style: none;
}
svg {
overflow: hidden;
vertical-align: middle;
}
table {
border-collapse: collapse;
}
caption {
padding-top: 0.75rem;
padding-bottom: 0.75rem;
color: #6c757d;
text-align: left;
caption-side: bottom;
}
th {
text-align: inherit;
}
label {
display: inline-block;
margin-bottom: 0.5rem;
}
button {
border-radius: 0;
}
button:focus {
outline: 1px dotted;
outline: 5px auto -webkit-focus-ring-color;
}
input,
button,
select,
optgroup,
textarea {
margin: 0;
font-family: inherit;
font-size: inherit;
line-height: inherit;
}
button,
input {
overflow: visible;
}
button,
select {
text-transform: none;
}
button,
html [type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
padding: 0;
border-style: none;
}
input[type="radio"],
input[type="checkbox"] {
box-sizing: border-box;
padding: 0;
}
input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
-webkit-appearance: listbox;
}
textarea {
overflow: auto;
resize: vertical;
}
fieldset {
min-width: 0;
padding: 0;
margin: 0;
border: 0;
}
legend {
display: block;
width: 100%;
max-width: 100%;
padding: 0;
margin-bottom: .5rem;
font-size: 1.5rem;
line-height: inherit;
color: inherit;
white-space: normal;
}
progress {
vertical-align: baseline;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
}
[type="search"] {
outline-offset: -2px;
-webkit-appearance: none;
}
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
::-webkit-file-upload-button {
font: inherit;
-webkit-appearance: button;
}
output {
display: inline-block;
}
summary {
display: list-item;
cursor: pointer;
}
template {
display: none;
}
[hidden] {
display: none !important;
}
/*# sourceMappingURL=bootstrap-reboot.css.map */

File diff suppressed because one or more lines are too long

View File

@@ -1,8 +0,0 @@
/*!
* Bootstrap Reboot v4.1.3 (https://getbootstrap.com/)
* Copyright 2011-2018 The Bootstrap Authors
* Copyright 2011-2018 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
*/*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}@-ms-viewport{width:device-width}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}
/*# sourceMappingURL=bootstrap-reboot.min.css.map */

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 342 KiB

View File

@@ -1,178 +0,0 @@
@font-face {
font-family: 'ms-pgothic';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(./font/ms-pgothic.woff2) format('woff2');
unicode-range: U+25ee8, U+25f23, U+25f5c, U+25fd4, U+25fe0, U+25ffb, U+2600c, U+26017, U+26060, U+260ed, U+26222, U+2626a, U+26270, U+26286, U+2634c, U+26402, U+2667e, U+266b0, U+2671d, U+268dd, U+268ea, U+26951, U+2696f, U+26999, U+269dd, U+26a1e, U+26a58, U+26a8c, U+26ab7, U+26aff, U+26c29, U+26c73, U+26c9e, U+26cdd, U+26e40, U+26e65, U+26f94, U+26ff6-26ff8, U+270f4, U+2710d, U+27139, U+273da-273db, U+273fe, U+27410, U+27449, U+27614-27615, U+27631, U+27684, U+27693, U+2770e, U+27723, U+27752, U+278b2, U+27985, U+279b4, U+27a84, U+27bb3, U+27bbe, U+27bc7, U+27c3c, U+27cb8, U+27d73, U+27da0, U+27e10, U+27eaf, U+27fb7, U+2808a, U+280bb, U+28277, U+28282, U+282f3, U+283cd, U+2840c, U+28455, U+284dc, U+2856b, U+285c8-285c9, U+286d7, U+286fa, U+28946, U+28949, U+2896b, U+28987-28988, U+289ba-289bb, U+28a1e, U+28a29, U+28a43, U+28a71, U+28a99, U+28acd, U+28add, U+28ae4, U+28bc1, U+28bef, U+28cdd, U+28d10, U+28d71, U+28dfb, U+28e0f, U+28e17, U+28e1f, U+28e36, U+28e89, U+28eeb, U+28ef6, U+28f32, U+28ff8, U+292a0, U+292b1, U+29490, U+295cf, U+2967f, U+296f0, U+29719, U+29750, U+29810, U+298c6, U+29a72, U+29d4b, U+29ddb, U+29e15, U+29e3d, U+29e49, U+29e8a, U+29ec4, U+29edb, U+29ee9, U+29fce, U+29fd7, U+2a01a, U+2a02f, U+2a082, U+2a0f9, U+2a190, U+2a2b2, U+2a38c, U+2a437, U+2a5f1, U+2a602, U+2a61a, U+2a6b2, U+2a9e6, U+2b746, U+2b751, U+2b753, U+2b75a, U+2b75c, U+2b765, U+2b776-2b777, U+2b77c, U+2b782, U+2b789, U+2b78b, U+2b78e, U+2b794, U+2b7ac, U+2b7af, U+2b7bd, U+2b7c9, U+2b7cf, U+2b7d2, U+2b7d8, U+2b7f0, U+2b80d, U+2b817, U+2b81a, U+2d544, U+2e278, U+2e569, U+2e6ea, U+2f804, U+2f80f, U+2f815, U+2f818, U+2f81a, U+2f822, U+2f828, U+2f82c, U+2f833, U+2f83f, U+2f846, U+2f852, U+2f862, U+2f86d, U+2f873, U+2f877, U+2f884, U+2f899-2f89a, U+2f8a6, U+2f8ac, U+2f8b2, U+2f8b6, U+2f8d3, U+2f8db-2f8dc, U+2f8e1, U+2f8e5, U+2f8ea, U+2f8ed, U+2f8fc, U+2f903, U+2f90b, U+2f90f, U+2f91a, U+2f920-2f921, U+2f945, U+2f947, U+2f96c, U+2f995, U+2f9d0, U+2f9de-2f9df, U+2f9f4;
}
body {
font-family: 'ms-pgothic';
background-color: rgba(0, 0, 0, 0);
}
html,body {
height: 100%;
overflow:hidden;
}
#Block{
position: absolute;
width: 75.9%;
height: 100%;
left: 66px;
bottom: 7px;
background-color: rgba(0,0,0,0.8);
}
.mb-1{
font-size: 16px;
color: White;
}
#loginform{
position: relative;
left: 100px;
text-shadow: #000 2px 2px;
}
.char-select-list {
height: 15em;
overflow-y: scroll;
}
.form-control {
display: block;
width: 100%;
height: calc(1.1em + .75rem + 2px);
padding: .375rem .75rem;
font-size: 13px;
font-weight: 400;
line-height: 1.1;
color: rgba(255,255,255,1);
background-color: rgba(0,0,0,0.9);
background-clip: padding-box;
border: 0.1px solid rgba(100,100,100,0.9)!important;
border-radius: .25rem;
transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.form-group {
position: relative;
left: 3px;
margin-bottom: .4rem;
}
.form-control:focus
{
display: block;
width: 100%;
height: calc(1.1em + .75rem + 2px);
padding: .375rem .75rem;
font-size: 13px;
font-weight: 400;
line-height: 1.1;
color: rgba(255,255,255,1);
background-color: rgba(0,0,0,0.9);
background-clip: padding-box;
border: 0.1px solid rgba(100,100,100,0.9);
border-radius: .25rem;
transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
box-shadow: 0px 0px 0px 0.2rem rgba(255,255,255,0)
}
input[readonly] {
pointer-events: none;
}
:-ms-input-placeholder.form-control {
color: rgba(255,255,255,0.9);
}
.form-control:disabled, .form-control[readonly] {
color: rgba(255, 255, 255, 1);
background-color: rgba(0,0,0,0.9);
}
input, select, textarea{
color: #ff0000;
}
.btn-primary{
color: #fff;
border-color: rgba(0,0,0,0)!important;;
background-color: rgba(0,0,0,0)!important;
box-shadow:0px 0px 0px rgba(0,0,0,0)!important;
height: 100%;
width: 100%;
}
.btn-primary.focus, .btn-primary:focus{
color: #fff;
border-color: rgba(0,0,0,0);
background-color: rgba(0,0,0,0);
height: 100%;
width: 100%;
box-shadow:0px 0px 0px rgba(0,0,0,0);
}
.btn-primary:active{
background-color: rgba(0,0,0,0);
}
.btn-primary:hover {
color: #fff;
border-color: rgba(0,0,0,0);
background-color: rgba(0,0,0,0);
height: 100%;
width: 100%;
}
#submitButton{
background: url("../ressources/BT_Launch.png") no-repeat scroll 0 0 transparent;
color: rgba(255,255,255,1);
cursor: pointer;
font-weight: bold;
height: 74px;
position:relative;
right: 23px;
margin-top: 5px;
width: 308px;
}
#submitButton:hover{
background: url("../ressources/BT_Launch_Hover.png") no-repeat scroll 0 0 transparent;
color: rgba(255,255,255,1);
cursor: pointer;
font-weight: bold;
height: 74px;
position:relative;
right: 23px;
margin-top: 5px;
width: 308px;
}
#CheckBoxSaveUser{
font-size: 15px!important;
width: 150px!important;
height: 22px!important;
color: rgba(200, 200, 200, 1);
position: relative!important;
left: 150px!important;
top: 3px!important;
cursor: pointer!important;
text-shadow: #000 2px 2px!important;
}
#CheckBoxSaveUser:hover{
color: rgba(255, 255, 255, 1);
}
.container {
width: 100%;
padding-right: 0px;
padding-left: 15px;
margin-right: auto;
margin-left: auto;
}

View File

@@ -1,292 +1,199 @@
@font-face {
font-family: 'ms-pgothic';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(./font/ms-pgothic.woff2) format('woff2');
unicode-range: U+25ee8, U+25f23, U+25f5c, U+25fd4, U+25fe0, U+25ffb, U+2600c, U+26017, U+26060, U+260ed, U+26222, U+2626a, U+26270, U+26286, U+2634c, U+26402, U+2667e, U+266b0, U+2671d, U+268dd, U+268ea, U+26951, U+2696f, U+26999, U+269dd, U+26a1e, U+26a58, U+26a8c, U+26ab7, U+26aff, U+26c29, U+26c73, U+26c9e, U+26cdd, U+26e40, U+26e65, U+26f94, U+26ff6-26ff8, U+270f4, U+2710d, U+27139, U+273da-273db, U+273fe, U+27410, U+27449, U+27614-27615, U+27631, U+27684, U+27693, U+2770e, U+27723, U+27752, U+278b2, U+27985, U+279b4, U+27a84, U+27bb3, U+27bbe, U+27bc7, U+27c3c, U+27cb8, U+27d73, U+27da0, U+27e10, U+27eaf, U+27fb7, U+2808a, U+280bb, U+28277, U+28282, U+282f3, U+283cd, U+2840c, U+28455, U+284dc, U+2856b, U+285c8-285c9, U+286d7, U+286fa, U+28946, U+28949, U+2896b, U+28987-28988, U+289ba-289bb, U+28a1e, U+28a29, U+28a43, U+28a71, U+28a99, U+28acd, U+28add, U+28ae4, U+28bc1, U+28bef, U+28cdd, U+28d10, U+28d71, U+28dfb, U+28e0f, U+28e17, U+28e1f, U+28e36, U+28e89, U+28eeb, U+28ef6, U+28f32, U+28ff8, U+292a0, U+292b1, U+29490, U+295cf, U+2967f, U+296f0, U+29719, U+29750, U+29810, U+298c6, U+29a72, U+29d4b, U+29ddb, U+29e15, U+29e3d, U+29e49, U+29e8a, U+29ec4, U+29edb, U+29ee9, U+29fce, U+29fd7, U+2a01a, U+2a02f, U+2a082, U+2a0f9, U+2a190, U+2a2b2, U+2a38c, U+2a437, U+2a5f1, U+2a602, U+2a61a, U+2a6b2, U+2a9e6, U+2b746, U+2b751, U+2b753, U+2b75a, U+2b75c, U+2b765, U+2b776-2b777, U+2b77c, U+2b782, U+2b789, U+2b78b, U+2b78e, U+2b794, U+2b7ac, U+2b7af, U+2b7bd, U+2b7c9, U+2b7cf, U+2b7d2, U+2b7d8, U+2b7f0, U+2b80d, U+2b817, U+2b81a, U+2d544, U+2e278, U+2e569, U+2e6ea, U+2f804, U+2f80f, U+2f815, U+2f818, U+2f81a, U+2f822, U+2f828, U+2f82c, U+2f833, U+2f83f, U+2f846, U+2f852, U+2f862, U+2f86d, U+2f873, U+2f877, U+2f884, U+2f899-2f89a, U+2f8a6, U+2f8ac, U+2f8b2, U+2f8b6, U+2f8d3, U+2f8db-2f8dc, U+2f8e1, U+2f8e5, U+2f8ea, U+2f8ed, U+2f8fc, U+2f903, U+2f90b, U+2f90f, U+2f91a, U+2f920-2f921, U+2f945, U+2f947, U+2f96c, U+2f995, U+2f9d0, U+2f9de-2f9df, U+2f9f4;
}
*{margin:0; padding:0; font-family:sans-serif!important;}
*[unselectable="on"]{cursor:default; user-select: none; -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none;}
a{border:none; outline:none;}
ul{list-style:none;}
img{border-style:none;}
html,body{width:100%; height:100%; overflow:hidden;}
body{background:#092314; font-family:sans-serif; color:#d1c0a5; font-size:14px; line-height:16px;}
.grabbable{position:absolute; left:0; top:0; width:100%; height:100%;}
#main{width:1124px; height:600px; overflow:hidden; position:absolute; left:0; top:0; background-image:url(../img/background.png); background-repeat:no-repeat;}
img {
pointer-events: none;
}
#game_starting{display:none; position:absolute; left:0; top:0; width:100%; height:100%; background-color:rgba(0,0,0,0.5); background-image:url(../img/start_now.png); background-repeat:no-repeat; background-position:center; z-index:2000;}
p {
-ms-user-select: none;
cursor: default;
}
#window_controls{width:106px; height:20px; position:absolute; right:10px; top:0; z-index:1000;}
#window_controls div{width:50px; height:20px; position:absolute; top:0; background-color:rgba(0,0,0,0.5); border-radius:0px 0px 5px 5px; cursor:pointer; text-align:center;}
#window_controls div:hover{background-color:rgba(150,150,150,0.3)}
#window_controls .button_min{left:0;}
#window_controls .button_close{right:0;}
body {
font-family: 'ms-pgothic';
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
font-size: 11px;
}
#header{width:525px; height:114px; position:absolute; left:0; top:11px; background:no-repeat 0px 27px;}
#header .background{position:absolute; left:0px; top:24px; height:70px; background-color:rgba(0,0,0,0.6); width:550px; border-radius:1px 5px 5px 1px}
#header img{margin-left:17px; position:relative;}
#header p{color:#dcdcdc; position:absolute; left:330px; top:72px;}
#header p.title1 {font-weight:bold; font-size:15px; position: absolute; top:30px}
#header p.title2 {font-weight:bold; font-size:15px; position: absolute; top:48px}
html,body {
height: 100%;
overflow:hidden;
}
#button_config{width:284px; height:33px; position:absolute; left:137px; bottom:48px; cursor:pointer; background:no-repeat 0px 0px; z-index:1000; background-image:url(../img/button_config.png);}
#button_config:hover{background-image:url(../img/button_config_hover.png);}
.char-select-list {
height: 15em;
overflow-y: scroll;
}
#log_outer{width:410px; height:86px; padding:6px 8px; position:absolute; left:65px; bottom:90px; background-color:rgba(0,0,0,0.8); border-radius:3px 3px 3px 3px; border: 1px solid #a6a08a;}
#log_outer .log_inner{display:block; width:410px; height:86px; font-size:12px; line-height:14px; color:#dcdcdc; overflow:hidden; position:absolute;}
#log_outer .log_inner p{width:400px;}
#log_outer .log_inner span.winsock{color:#d9ff07;}
#log_outer .log_inner span.white{color:#ffffff;}
#log_outer .log_inner span.green{color:#28a745;}
#log_outer .log_inner span.red{color:#bd2130;}
#BlockGlobal{
background-color: rgba(0,0,0,0.8);
position: absolute;
width: 1160px;
height: 600px;
top: 0px;
display: block;
align-content: center;
}
#login{width:300px; height:265px; position:absolute; left:129px; top:140px;}
#login .login_button{position:absolute; left:-3px; top:167px; width:300px; height:64px; background-image:url(../img/button_launch.png); cursor:pointer;}
#login .login_button:hover,#login .login_button.hover{background-image:url(../img/button_launch_hover.png);}
#login .login_button span{position:absolute; font-size:24px; font-weight:bold; left:113px; top:23px; color:white; cursor:pointer;}
#titlebar {
margin :0 auto;
display:inline-block;
width: 100%;
}
.left {
float:left;
}
.right {
padding-right: 5px;
float: right;
}
#exit {
color: rgba(200,200,200,1);
background-color: rgba(0,0,0,0.9);
display: block!important;
padding: .1rem 1.1rem!important;
text-align: center!important;
}
#login .login_save{width:135px; height:12px; position:absolute; left:81px; top:236px; cursor:pointer; color:white;}
#exit:hover{
color: rgba(255,255,255,1);
background-color: rgba(255,0,0,0.9);
}
#login .login_form{width:254px; height:146px; position:absolute; left:19px; top:0;}
#login .login_form *{color:#fff; font-size:12px; outline:none; border:none; background:none;}
#login .login_form input{position:absolute; width:244px; background-color:rgba(0,0,0,0.6); padding:6px; border:1px solid #a6a08a; border-radius:2px 2px 2px 2px;}
#login .login_form input#username{top:24px;}
#login .login_form input#password{top:74px;}
#login .login_form input#server{top:124px;}
#login .login_form input[type=submit]{width:0; height:0; padding:0; border:0;}
#login .login_form label{position:absolute; font-size:16px;}
#login .login_form label.label_username{top:8px;}
#login .login_form label.label_password{top:58px;}
#login .login_form label.label_server{top:108px;}
#Reduce{
color: rgba(200,200,200,1);
background-color: rgba(0,0,0,0.9);
display: block!important;
padding: .1rem 1.1rem!important;
text-align: center!important;
}
#login #processing{display:none; position:absolute; left:-7px; top:-3px; width:307px; height:271px; background-color:rgba(0,0,0,0.8); background-image:url(../img/load.gif); background-position:center; background-size:50px 50px; background-repeat:no-repeat; border-radius:2px 2px 2px 2px; z-index:1;}
#login #processing p{color:#fff; text-align:center; width:100%; position:absolute; left:0; top:160px; z-index:2;}
#Reduce:hover{
color: rgba(255,255,255,1);
background-color: rgba(200,200,200,1);
}
#char_select{width:520px; height:378px; position:absolute; left:35px; top:115px; color:#313131; display:none;}
#char_select #units{width:398px; height:100px; position:absolute; left:45px; top:50px; background-image:url(../img/button_charsel_char.jpg);}
#logo {
text-align: center;
height: 130px;
}
#char_select #units .unit{display:none; width:398px; height:100px; position:absolute; left:0; cursor:default;}
#char_select #units .unit.active{display:block;}
#logo_pic{
position: absolute;
width: 340px;
left: 10px;
}
#char_select .scroll{width:91px; height:25px; position:absolute; left:198px; background-image:url(../img/button_charsel.png); cursor:pointer; z-index:1000;}
#char_select .scroll.up{top:14px;}
#char_select .scroll.down{top:159px; transform:scaleY(-1);}
#char_select .scroll:hover{background-image:url(../img/button_charsel_hover.png);}
#version {
text-align: justify;
font-size: 13px;
Color: white;
position: absolute;
top: 42px;
left: 354px;
}
#char_select #units .unit *{color:white; font-size:16px; position:absolute;}
#char_select #units .unit img{top:42px; left:18px;}
#char_select #units .unit #char_name{top:15px; font-size:30px; width:100%; text-align:center;}
#char_select #units .unit #char_weapon{top:70px; left:80px; font-weight:bold;}
#char_select #units .unit #char_hr{top:43px; left:210px;}
#char_select #units .unit #char_gr{top:43px; left:260px;}
#char_select #units .unit #char_sex{top:43px; left:310px;}
#char_select #units .unit #char_uid{top:58px; left:210px;}
#char_select #units .unit #char_login{top:73px; left:210px;}
#ico_fond{
position: absolute;
left: 502px;
top: 60px;
}
#char_select .weapon_text{position:absolute; font-weight:bold; top:98px; left:117px; color:white;}
#footer {
position:fixed;
left:0px;
bottom:0px;
height:30px;
width:100%;
background:#999;
}
.h-25 {
height: 25%!Important;
}
#char_select .auto_login{position:absolute; top:155px; left:50px; color:white; cursor:pointer;}
#footerID
{
background-color: rgba(0, 0, 0, 0.8);
height:38px;
}
#AllMark
{
position: relative;
left: 35px;
bottom: 4px;
}
#char_select .button_add,
#char_select .button_del,
#char_select .button_log{width:130px; height:33px; position:absolute; top:195px; background-image:url(../img/button_option.png); cursor:pointer; z-index:1000;}
.btn-secondary {
color: rgba(0,0,0,0)!important;
background-color: rgba(0,0,0,0)!important;
border-color: rgba(0,0,0,0)!important;
width: 100%!important;
height: 100%!important;
box-shadow:0px 0px 0px rgba(0,0,0,0)!important;
}
#char_select .button_add{left:40px;}
#char_select .button_del{left:179px;}
#char_select .button_log{left:318px;}
#fond_logo{
position: absolute;
top: 33px;
height: 80px;
background-color: rgba(0,0,0,0.8);
width: 550px;
border-radius: 1px 5px 5px 1px;
}
#char_select .button_add span,
#char_select .button_del span,
#char_select .button_log span{position:absolute; font-size: 14px; color:white; cursor:pointer; top:8px;}
#submitForm:hover {
background: url("../ressources/bt_config_hover.png") no-repeat scroll 0 0 transparent;
cursor: pointer;
height: 32px;
margin-top: 7px;
width: 285px;
position: relative;
left: 140px;
box-shadow:0px 0px 0px rgba(0,0,0,0)!important;
}
#char_select .button_add span{left:18px}
#char_select .button_del span{left:12px}
#char_select .button_log span{left:39px}
#submitForm {
background: url("../ressources/bt_config.png") no-repeat scroll 0 0 transparent;
cursor: pointer;
height: 32px;
margin-top: 7px;
width: 285px;
position: relative;
left: 140px;
}
#char_select .button_add:hover,
#char_select .button_del:hover,
#char_select .button_log:hover{background-image:url(../img/button_option_hover.png);}
.container-fluid {
width: 100%;
padding-right: 15px;
padding-left: 15px;
margin-right: 0;
margin-left: 0;
}
#char_select .button_start{width:300px; height:64px; position:absolute; left:90px; top:229px; background-image:url(../img/button_launch.png); cursor:pointer; z-index:1000;}
#char_select .button_start:hover{background-image:url(../img/button_launch_hover.png);}
#char_select .button_start span{position:absolute; font-size:24px; font-weight:bold; left:110px; top:23px; color:white; cursor:pointer;}
#alertBox{
width: 100%;
height: 100%;
overflow: auto;
}
#dev{display:none; width:100%; z-index: 10000; position:absolute; bottom:0px;}
#dev input{width:100%; height:20px; font-size: 16px;}
#Dialog_Alert{
width: 414px;
height: 95px;
position: relative;
top: 3px;
left: 3px;
}
#footer{width:100%; height:39px; position:absolute; left:0; bottom:0; background-color:rgba(0,0,0,0.6); overflow:hidden;}
#footer .link{padding:4px; display:block; position:absolute; z-index:1000; cursor:pointer;}
.alert {
font-size: 13px!important;
position: relative;
padding: 0.1px 1px 0.1px 10px;
margin-bottom: 0;
border: 0px solid transparent;
border-radius: 0rem;
border-color: rgba(0,0,0,0);
background-color: rgba(0,0,0,0);
}
/* UNUSED
#launcher_bnr{width:533px; height:129px; position:absolute; right:38px; top:30px;}
#launcher_bnr .bnr{width:523px; height:129px; position:absolute; left:0; top:0; background:no-repeat 0px 0px; overflow:hidden;}
#launcher_bnr .bnr img{margin-left:1px;}
#launcher_bnr .bnr .frame{width:523px; height:129px; position:absolute; left:0; top:0; background:no-repeat 0px 0px; cursor:pointer;}
#launcher_bnr .dots{width:10px; position:absolute; right:0; top:0; max-height:129px;}
#launcher_bnr .dots ul{position:relative; width:10px; padding-top:6px;}
#launcher_bnr .dots li{display:block; width:10px; height:10px; padding:6px 0; position:relative;}
#launcher_bnr .dots li .dot{width:10px; height:10px; background:no-repeat 0px 0px; cursor:pointer;}
#launcher_bnr .dots li .dot.crr,
#launcher_bnr .dots li .dot:hover{background-position:0px -10px;}
#launcher_bnr .dots li .dot img{display:none;}
#launcher_info_list{width:535px; height:288px; position:absolute; right:38px; top:163px; overflow:hidden; overflow-y:auto;}
#launcher_info_list .important_info, #launcher_info_list .normal_info{margin-bottom:5px;}
#launcher_info_list .head{width:513px; height:23px; position:relative;}
#launcher_info_list .head .lbl{position:absolute; left:0; top:0; width:513px; height:23px; background:no-repeat 0px 0px;}
#launcher_info_list .head a{position:absolute; right:10px; top:6px; display:block; width:35px; height:13px; background:no-repeat 0px 0px;}
#launcher_info_list .head a:hover{background-position:0px -13px;}
#launcher_info_list ul.article{margin-left:18px; width:517px; position:relative;}
#launcher_info_list ul.article li{width:517px; position:relative; overflow:hidden; padding:5px 0;}
#launcher_info_list ul.article li div{position:relative; float:left;}
#launcher_info_list ul.article li .date{width:110px;}
#launcher_info_list ul.article li .body{width:340px;}
#launcher_info_list ul.article li .body a{color:#d1c0a5; text-decoration:none;}
#launcher_info_list ul.article li .body a:hover{color:#EFDDC2;}
#launcher_info_list .important_info ul.article li .body a, #launcher_info_list .important_info ul.article li .date{color:#f4c833;}
#launcher_info_list .important_info ul.article li .body a:hover{color:#F8DD81;}
#launcher_info_list ul.article li .icon{width:30px; height:14px; background:no-repeat center center;}
#launcher_info_list a{cursor:pointer;}
#launcher_info_detail{width:532px; height:423px; position:absolute; right:38px; top:30px; background:no-repeat 0px 0px;}
#launcher_info_detail .article_frame{width:532px; height:423px; position:absolute; left:0; top:0; overflow:hidden; overflow-y:auto;}
#launcher_info_detail .article_frame .article{width:498px; min-height:394px; position:relative; margin:10px 0 10px 13px; padding-top:9px; background-color:#fef5e6; font-family:" Pゴシック", "MS PGothic", sans-serif; font-size:14px; line-height:18px; color:#333333;}
#launcher_info_detail .article_frame .article .article_category{width:498px; height:24px; background:no-repeat 0px 0px; margin-bottom:9px;}
#launcher_info_detail .article_frame .article .newstitle_area{width:468px; background-color:#e8d9b9; padding:4px 0 2px; margin:0 auto 10px;}
#launcher_info_detail .article_frame .article .newstext_area{width:468px; margin:0 auto;}
#launcher_info_detail .btn_back{cursor:pointer; width:160px; height:18px; position:absolute; left:184px; bottom:6px; background:no-repeat 0px 0px;}
#launcher_info_detail .btn_back:hover{background-position:0px -18px;}
#launcher_info_detail a{cursor:pointer;}
.alert-info {
color:#d9ff07;
}
#launcher_menu{height:86px; position:absolute; right:14px; top:467px; overflow:hidden;}
#launcher_menu .btn{width:82px; height:86px; background:no-repeat 0px 0px; float:right; margin:0 2px; cursor:pointer;}
#launcher_menu .btn:hover{background-position:0px -86px;}
#launcher_menu .btn.hangameb,#launcher_menu .btn.hancoin{display:none;}
.alert-secondary {
color: #ffffff;
}
#launcher_footer{width:100%; height:39px; position:absolute; left:0; bottom:0; overflow:hidden;}
#launcher_footer .btn{display:block; position:absolute; z-index:1000; cursor:pointer;}
#launcher_footer .btn.capcom{width:101px; height:26px; background:no-repeat 0px 0px; left:31px; top:6px;}
#launcher_footer .btn.cog{width:76px; height:21px; background:no-repeat 0px 0px; left:142px; top:9px;}
#launcher_footer .btn.hangame{display:none;}
#launcher_footer p{color:#a0a0a0; font-size:12px; line-height:12px; position:absolute; left:142px; top:14px;}
.alert-success {
color: #28a745;
}
#launcher_footer .share{position:absolute; right:36px; top:6px; overflow:hidden; width:136px; height:27px;}
#launcher_footer .share .btn{display:block; background:no-repeat; margin-left:10px; position:relative; float:left; cursor:pointer;}
#launcher_footer .share .btn.tw{width:28px; height:27px; background-position:0px 0px;}
#launcher_footer .share .btn.fb{width:28px; height:27px; background-position:-28px 0px;}
#launcher_footer .share .btn.yt{width:50px; height:21px; margin-top:3px; background-position:-56px -3px;}
.alert-danger {
color: #bd2130;
}
#launcher_modal{width:100%; height:100%; position:fixed; left:0; top:0; display:none; z-index:1000;}
#launcher_modal .modal{width:100%; height:100%; position:absolute; left:0; top:0;}
#launcher_modal .dialog{position:absolute; left:282px; top:140px; width:560px; height:320px; background:url(images/dialog/bg.jpg) no-repeat 0px 0px;}
#launcher_modal .dialog p{color:#d1c0a5; font-size:18px; line-height:36px; width:100%; position:relative; text-align:center; padding-top:105px;}
#launcher_modal .dialog p.alert{line-height:26px; padding-top:90px; font-size:20px;}
#launcher_modal .dialog p span.uid{font-size:12px;}
#launcher_modal .dialog p span.attention{color:#f4de22;}
#launcher_modal .dialog p span.notes{color:#eb3535; font-size:16px; line-height:20px;}
#launcher_modal .dialog p div.sp{width:100%; height:10px;}
#launcher_modal .dialog .btnBox{width:100%; height:44px; position:absolute; left:0; top:252px;}
#launcher_modal .dialog .btns{text-align:center; margin:0 auto; position:relative; overflow:hidden}
#launcher_modal .dialog .btns ul{position:relative; left:50%; float:left; list-style:none}
#launcher_modal .dialog .btns ul li{position:relative; left:-50%; float:left; margin-left:33px;}
#launcher_modal .dialog .btns ul li:first-child{margin-left:5px;}
#launcher_modal .dialog .btns ul li div{display:block; width:200px; height:35px; padding-top:9px; position:relative; background:no-repeat 0px 0px; text-decoration:none; color:#d1c0a5; font-weight:bold; font-size:18px; line-height:18px; text-align:center; cursor:pointer;}
#launcher_modal .dialog .btns ul li div:hover,#launcher_modal .dialog .btns ul li div.hover{background-position:0px -44px;}
#launcher_modal .dialog .btns ul li div.wait:hover,#launcher_modal .dialog .btns ul li div.wait.hover{background-position:0px 0px; cursor:default;}
#Box_Diag {
background-color: rgba(0,0,0,0.9);
width: 421px;
height: 101px;
position: relative;
left: 80px;
}
.column {
float: left;
padding: 10px;
}
.row::after {
content: "";
clear: both;
display: table;
}
.CalibrationTradMark {
padding-top: 3px;
}
.alert-dismissible .close {
position: absolute;
top: 0;
right: 0;
padding: 0;
color: inherit;
}
button.close {
padding: 0;
background-color: transparent;
border: 0;
-webkit-appearance: none;
color: rgba(0, 0, 0, 0)!important;
!important: ;
}
.close {
float: right;
font-size: 0rem;
font-weight: 100;
line-height: 1;
color: #000;
text-shadow: 0 1px 0 #fff;
opacity: 0;
}
/* width */
::-webkit-scrollbar {
width: 10px;
}
/* Track */
::-webkit-scrollbar-track {
background: #f1f1f1;
}
/* Handle */
::-webkit-scrollbar-thumb {
background: #888;
}
/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
background: #555;
}
.scroll_bar_box{width:10px; position:absolute;}
.scroll_bar_box_base{width:10px; height:100%; position:absolute; right:0; top:0; border-radius:5px; background:#000; opacity:0.4; -moz-opacity:0.4; filter: alpha(opacity=40); -ms-filter:"alpha(opacity=40)";}
.scroll_bar_box_body{width:6px; position:absolute; right:2px; border-radius:3px; background:#535353; transition:background-color 0.2s linear 0; cursor:pointer; opacity:0.8; -moz-opacity:0.8; filter: alpha(opacity=80); -ms-filter:"alpha(opacity=80)";}
.scroll_bar_box_body:hover, .scroll_bar_box_body.active{background:#FFF; transition:background-color 0.4s linear 0;}
.xboxOnly,.ps3Only,.psvOnly,.wiiuOnly{display:none}
body#cog .cogHide,body#cog .nhnOnly{display:none}
body#hangame .nhnHide,body#hangame .cogOnly{display:none}
.spOnly,.iosOnly,.droidOnly{display:none}
.consoleOnly,.nfXboxOnly,.nfPs3Only,.nfPsVOnly{display:none}
.nintendoOnly,.playstation3Only,.playstation4Only,.playstationVitaOnly{display:none}
*/

View File

@@ -1,791 +0,0 @@
/*************** SCROLLBAR BASE CSS ***************/
.scroll-wrapper {
overflow: hidden !important;
padding: 0 !important;
position: relative;
}
.scroll-wrapper > .scroll-content {
border: none !important;
box-sizing: content-box !important;
height: auto;
left: 0;
margin: 0;
max-height: none;
max-width: none !important;
overflow: scroll !important;
padding: 0;
position: relative !important;
top: 0;
width: auto !important;
}
.scroll-wrapper > .scroll-content::-webkit-scrollbar {
height: 0;
width: 0;
}
.scroll-element {
display: none;
}
.scroll-element, .scroll-element div {
box-sizing: content-box;
}
.scroll-element.scroll-x.scroll-scrollx_visible,
.scroll-element.scroll-y.scroll-scrolly_visible {
display: block;
}
.scroll-element .scroll-bar,
.scroll-element .scroll-arrow {
cursor: default;
}
.scroll-textarea {
border: 1px solid #cccccc;
border-top-color: #999999;
}
.scroll-textarea > .scroll-content {
overflow: hidden !important;
}
.scroll-textarea > .scroll-content > textarea {
border: none !important;
box-sizing: border-box;
height: 100% !important;
margin: 0;
max-height: none !important;
max-width: none !important;
overflow: scroll !important;
outline: none;
padding: 2px;
position: relative !important;
top: 0;
width: 100% !important;
}
.scroll-textarea > .scroll-content > textarea::-webkit-scrollbar {
height: 0;
width: 0;
}
/*************** SIMPLE INNER SCROLLBAR ***************/
.scrollbar-inner > .scroll-element,
.scrollbar-inner > .scroll-element div
{
border: none;
margin: 0;
padding: 0;
position: absolute;
z-index: 10;
}
.scrollbar-inner > .scroll-element div {
display: block;
height: 100%;
left: 0;
top: 0;
width: 100%;
}
.scrollbar-inner > .scroll-element.scroll-x {
bottom: 2px;
height: 8px;
left: 0;
width: 100%;
}
.scrollbar-inner > .scroll-element.scroll-y {
height: 100%;
right: 2px;
top: 0;
width: 8px;
}
.scrollbar-inner > .scroll-element .scroll-element_outer {
overflow: hidden;
}
.scrollbar-inner > .scroll-element .scroll-element_outer,
.scrollbar-inner > .scroll-element .scroll-element_track,
.scrollbar-inner > .scroll-element .scroll-bar {
-webkit-border-radius: 8px;
-moz-border-radius: 8px;
border-radius: 8px;
}
.scrollbar-inner > .scroll-element .scroll-element_track,
.scrollbar-inner > .scroll-element .scroll-bar {
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
filter: alpha(opacity=40);
opacity: 0.4;
}
.scrollbar-inner > .scroll-element .scroll-element_track { background-color: #e0e0e0; }
.scrollbar-inner > .scroll-element .scroll-bar { background-color: #c2c2c2; }
.scrollbar-inner > .scroll-element:hover .scroll-bar { background-color: #919191; }
.scrollbar-inner > .scroll-element.scroll-draggable .scroll-bar { background-color: #919191; }
/* update scrollbar offset if both scrolls are visible */
.scrollbar-inner > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track { left: -12px; }
.scrollbar-inner > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track { top: -12px; }
.scrollbar-inner > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size { left: -12px; }
.scrollbar-inner > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size { top: -12px; }
/*************** SIMPLE OUTER SCROLLBAR ***************/
.scrollbar-outer > .scroll-element,
.scrollbar-outer > .scroll-element div
{
border: none;
margin: 0;
padding: 0;
position: absolute;
z-index: 10;
}
.scrollbar-outer > .scroll-element {
background-color: #ffffff;
}
.scrollbar-outer > .scroll-element div {
display: block;
height: 100%;
left: 0;
top: 0;
width: 100%;
}
.scrollbar-outer > .scroll-element.scroll-x {
bottom: 0;
height: 12px;
left: 0;
width: 100%;
}
.scrollbar-outer > .scroll-element.scroll-y {
height: 100%;
right: 0;
top: 0;
width: 12px;
}
.scrollbar-outer > .scroll-element.scroll-x .scroll-element_outer { height: 8px; top: 2px; }
.scrollbar-outer > .scroll-element.scroll-y .scroll-element_outer { left: 2px; width: 8px; }
.scrollbar-outer > .scroll-element .scroll-element_outer { overflow: hidden; }
.scrollbar-outer > .scroll-element .scroll-element_track { background-color: #eeeeee; }
.scrollbar-outer > .scroll-element .scroll-element_outer,
.scrollbar-outer > .scroll-element .scroll-element_track,
.scrollbar-outer > .scroll-element .scroll-bar {
-webkit-border-radius: 8px;
-moz-border-radius: 8px;
border-radius: 8px;
}
.scrollbar-outer > .scroll-element .scroll-bar { background-color: #d9d9d9; }
.scrollbar-outer > .scroll-element .scroll-bar:hover { background-color: #c2c2c2; }
.scrollbar-outer > .scroll-element.scroll-draggable .scroll-bar { background-color: #919191; }
/* scrollbar height/width & offset from container borders */
.scrollbar-outer > .scroll-content.scroll-scrolly_visible { left: -12px; margin-left: 12px; }
.scrollbar-outer > .scroll-content.scroll-scrollx_visible { top: -12px; margin-top: 12px; }
.scrollbar-outer > .scroll-element.scroll-x .scroll-bar { min-width: 10px; }
.scrollbar-outer > .scroll-element.scroll-y .scroll-bar { min-height: 10px; }
/* update scrollbar offset if both scrolls are visible */
.scrollbar-outer > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track { left: -14px; }
.scrollbar-outer > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track { top: -14px; }
.scrollbar-outer > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size { left: -14px; }
.scrollbar-outer > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size { top: -14px; }
/*************** SCROLLBAR MAC OS X ***************/
.scrollbar-macosx > .scroll-element,
.scrollbar-macosx > .scroll-element div
{
background: none;
border: none;
margin: 0;
padding: 0;
position: absolute;
z-index: 10;
}
.scrollbar-macosx > .scroll-element div {
display: block;
height: 100%;
left: 0;
top: 0;
width: 100%;
}
.scrollbar-macosx > .scroll-element .scroll-element_track { display: none; }
.scrollbar-macosx > .scroll-element .scroll-bar {
background-color: #6C6E71;
display: block;
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
filter: alpha(opacity=0);
opacity: 0;
-webkit-border-radius: 7px;
-moz-border-radius: 7px;
border-radius: 7px;
-webkit-transition: opacity 0.2s linear;
-moz-transition: opacity 0.2s linear;
-o-transition: opacity 0.2s linear;
-ms-transition: opacity 0.2s linear;
transition: opacity 0.2s linear;
}
.scrollbar-macosx:hover > .scroll-element .scroll-bar,
.scrollbar-macosx > .scroll-element.scroll-draggable .scroll-bar {
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
filter: alpha(opacity=70);
opacity: 0.7;
}
.scrollbar-macosx > .scroll-element.scroll-x {
bottom: 0px;
height: 0px;
left: 0;
min-width: 100%;
overflow: visible;
width: 100%;
}
.scrollbar-macosx > .scroll-element.scroll-y {
height: 100%;
min-height: 100%;
right: 0px;
top: 0;
width: 0px;
}
/* scrollbar height/width & offset from container borders */
.scrollbar-macosx > .scroll-element.scroll-x .scroll-bar { height: 7px; min-width: 10px; top: -9px; }
.scrollbar-macosx > .scroll-element.scroll-y .scroll-bar { left: -9px; min-height: 10px; width: 7px; }
.scrollbar-macosx > .scroll-element.scroll-x .scroll-element_outer { left: 2px; }
.scrollbar-macosx > .scroll-element.scroll-x .scroll-element_size { left: -4px; }
.scrollbar-macosx > .scroll-element.scroll-y .scroll-element_outer { top: 2px; }
.scrollbar-macosx > .scroll-element.scroll-y .scroll-element_size { top: -4px; }
/* update scrollbar offset if both scrolls are visible */
.scrollbar-macosx > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size { left: -11px; }
.scrollbar-macosx > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size { top: -11px; }
/*************** SCROLLBAR LIGHT ***************/
.scrollbar-light > .scroll-element,
.scrollbar-light > .scroll-element div {
border: none;
margin: 0;
overflow: hidden;
padding: 0;
position: absolute;
z-index: 10;
}
.scrollbar-light > .scroll-element {
background-color: #ffffff;
}
.scrollbar-light > .scroll-element div {
display: block;
height: 100%;
left: 0;
top: 0;
width: 100%;
}
.scrollbar-light > .scroll-element .scroll-element_outer {
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
}
.scrollbar-light > .scroll-element .scroll-element_size {
background: #dbdbdb;
background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2RiZGJkYiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlOGU4ZTgiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+');
background: -moz-linear-gradient(left, #dbdbdb 0%, #e8e8e8 100%);
background: -webkit-gradient(linear, left top, right top, color-stop(0%,#dbdbdb), color-stop(100%,#e8e8e8));
background: -webkit-linear-gradient(left, #dbdbdb 0%,#e8e8e8 100%);
background: -o-linear-gradient(left, #dbdbdb 0%,#e8e8e8 100%);
background: -ms-linear-gradient(left, #dbdbdb 0%,#e8e8e8 100%);
background: linear-gradient(to right, #dbdbdb 0%,#e8e8e8 100%);
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
}
.scrollbar-light > .scroll-element.scroll-x {
bottom: 0;
height: 17px;
left: 0;
min-width: 100%;
width: 100%;
}
.scrollbar-light > .scroll-element.scroll-y {
height: 100%;
min-height: 100%;
right: 0;
top: 0;
width: 17px;
}
.scrollbar-light > .scroll-element .scroll-bar {
background: #fefefe;
background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZlZmVmZSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmNWY1ZjUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+');
background: -moz-linear-gradient(left, #fefefe 0%, #f5f5f5 100%);
background: -webkit-gradient(linear, left top, right top, color-stop(0%,#fefefe), color-stop(100%,#f5f5f5));
background: -webkit-linear-gradient(left, #fefefe 0%,#f5f5f5 100%);
background: -o-linear-gradient(left, #fefefe 0%,#f5f5f5 100%);
background: -ms-linear-gradient(left, #fefefe 0%,#f5f5f5 100%);
background: linear-gradient(to right, #fefefe 0%,#f5f5f5 100%);
border: 1px solid #dbdbdb;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
}
/* scrollbar height/width & offset from container borders */
.scrollbar-light > .scroll-content.scroll-scrolly_visible { left: -17px; margin-left: 17px; }
.scrollbar-light > .scroll-content.scroll-scrollx_visible { top: -17px; margin-top: 17px; }
.scrollbar-light > .scroll-element.scroll-x .scroll-bar { height: 10px; min-width: 10px; top: 0px; }
.scrollbar-light > .scroll-element.scroll-y .scroll-bar { left: 0px; min-height: 10px; width: 10px; }
.scrollbar-light > .scroll-element.scroll-x .scroll-element_outer { height: 12px; left: 2px; top: 2px; }
.scrollbar-light > .scroll-element.scroll-x .scroll-element_size { left: -4px; }
.scrollbar-light > .scroll-element.scroll-y .scroll-element_outer { left: 2px; top: 2px; width: 12px; }
.scrollbar-light > .scroll-element.scroll-y .scroll-element_size { top: -4px; }
/* update scrollbar offset if both scrolls are visible */
.scrollbar-light > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size { left: -19px; }
.scrollbar-light > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size { top: -19px; }
.scrollbar-light > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track { left: -19px; }
.scrollbar-light > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track { top: -19px; }
/*************** SCROLLBAR RAIL ***************/
.scrollbar-rail > .scroll-element,
.scrollbar-rail > .scroll-element div
{
border: none;
margin: 0;
overflow: hidden;
padding: 0;
position: absolute;
z-index: 10;
}
.scrollbar-rail > .scroll-element {
background-color: #ffffff;
}
.scrollbar-rail > .scroll-element div {
display: block;
height: 100%;
left: 0;
top: 0;
width: 100%;
}
.scrollbar-rail > .scroll-element .scroll-element_size {
background-color: #999;
background-color: rgba(0, 0, 0, 0.3);
}
.scrollbar-rail > .scroll-element .scroll-element_outer:hover .scroll-element_size {
background-color: #666;
background-color: rgba(0, 0, 0, 0.5);
}
.scrollbar-rail > .scroll-element.scroll-x {
bottom: 0;
height: 12px;
left: 0;
min-width: 100%;
padding: 3px 0 2px;
width: 100%;
}
.scrollbar-rail > .scroll-element.scroll-y {
height: 100%;
min-height: 100%;
padding: 0 2px 0 3px;
right: 0;
top: 0;
width: 12px;
}
.scrollbar-rail > .scroll-element .scroll-bar {
background-color: #d0b9a0;
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
border-radius: 2px;
box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5);
}
.scrollbar-rail > .scroll-element .scroll-element_outer:hover .scroll-bar {
box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.6);
}
/* scrollbar height/width & offset from container borders */
.scrollbar-rail > .scroll-content.scroll-scrolly_visible { left: -17px; margin-left: 17px; }
.scrollbar-rail > .scroll-content.scroll-scrollx_visible { margin-top: 17px; top: -17px; }
.scrollbar-rail > .scroll-element.scroll-x .scroll-bar { height: 10px; min-width: 10px; top: 1px; }
.scrollbar-rail > .scroll-element.scroll-y .scroll-bar { left: 1px; min-height: 10px; width: 10px; }
.scrollbar-rail > .scroll-element.scroll-x .scroll-element_outer { height: 15px; left: 5px; }
.scrollbar-rail > .scroll-element.scroll-x .scroll-element_size { height: 2px; left: -10px; top: 5px; }
.scrollbar-rail > .scroll-element.scroll-y .scroll-element_outer { top: 5px; width: 15px; }
.scrollbar-rail > .scroll-element.scroll-y .scroll-element_size { left: 5px; top: -10px; width: 2px; }
/* update scrollbar offset if both scrolls are visible */
.scrollbar-rail > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size { left: -25px; }
.scrollbar-rail > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size { top: -25px; }
.scrollbar-rail > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track { left: -25px; }
.scrollbar-rail > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track { top: -25px; }
/*************** SCROLLBAR DYNAMIC ***************/
.scrollbar-dynamic > .scroll-element,
.scrollbar-dynamic > .scroll-element div
{
background: none;
border: none;
margin: 0;
padding: 0;
position: absolute;
z-index: 10;
}
.scrollbar-dynamic > .scroll-element div {
display: block;
height: 100%;
left: 0;
top: 0;
width: 100%;
}
.scrollbar-dynamic > .scroll-element.scroll-x {
bottom: 2px;
height: 7px;
left: 0;
min-width: 100%;
width: 100%;
}
.scrollbar-dynamic > .scroll-element.scroll-y {
height: 100%;
min-height: 100%;
right: 2px;
top: 0;
width: 7px;
}
.scrollbar-dynamic > .scroll-element .scroll-element_outer {
opacity: 0.3;
-webkit-border-radius: 12px;
-moz-border-radius: 12px;
border-radius: 12px;
}
.scrollbar-dynamic > .scroll-element .scroll-element_size {
background-color: #cccccc;
opacity: 0;
-webkit-border-radius: 12px;
-moz-border-radius: 12px;
border-radius: 12px;
-webkit-transition: opacity 0.2s;
-moz-transition: opacity 0.2s;
-o-transition: opacity 0.2s;
-ms-transition: opacity 0.2s;
transition: opacity 0.2s;
}
.scrollbar-dynamic > .scroll-element .scroll-bar {
background-color: #6c6e71;
-webkit-border-radius: 7px;
-moz-border-radius: 7px;
border-radius: 7px;
}
/* scrollbar height/width & offset from container borders */
.scrollbar-dynamic > .scroll-element.scroll-x .scroll-bar {
bottom: 0;
height: 7px;
min-width: 24px;
top: auto;
}
.scrollbar-dynamic > .scroll-element.scroll-y .scroll-bar {
left: auto;
min-height: 24px;
right: 0;
width: 7px;
}
.scrollbar-dynamic > .scroll-element.scroll-x .scroll-element_outer {
bottom: 0;
top: auto;
left: 2px;
-webkit-transition: height 0.2s;
-moz-transition: height 0.2s;
-o-transition: height 0.2s;
-ms-transition: height 0.2s;
transition: height 0.2s;
}
.scrollbar-dynamic > .scroll-element.scroll-y .scroll-element_outer {
left: auto;
right: 0;
top: 2px;
-webkit-transition: width 0.2s;
-moz-transition: width 0.2s;
-o-transition: width 0.2s;
-ms-transition: width 0.2s;
transition: width 0.2s;
}
.scrollbar-dynamic > .scroll-element.scroll-x .scroll-element_size { left: -4px; }
.scrollbar-dynamic > .scroll-element.scroll-y .scroll-element_size { top: -4px; }
/* update scrollbar offset if both scrolls are visible */
.scrollbar-dynamic > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size { left: -11px; }
.scrollbar-dynamic > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size { top: -11px; }
/* hover & drag */
.scrollbar-dynamic > .scroll-element:hover .scroll-element_outer,
.scrollbar-dynamic > .scroll-element.scroll-draggable .scroll-element_outer {
overflow: hidden;
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
filter: alpha(opacity=70);
opacity: 0.7;
}
.scrollbar-dynamic > .scroll-element:hover .scroll-element_outer .scroll-element_size,
.scrollbar-dynamic > .scroll-element.scroll-draggable .scroll-element_outer .scroll-element_size {
opacity: 1;
}
.scrollbar-dynamic > .scroll-element:hover .scroll-element_outer .scroll-bar,
.scrollbar-dynamic > .scroll-element.scroll-draggable .scroll-element_outer .scroll-bar {
height: 100%;
width: 100%;
-webkit-border-radius: 12px;
-moz-border-radius: 12px;
border-radius: 12px;
}
.scrollbar-dynamic > .scroll-element.scroll-x:hover .scroll-element_outer,
.scrollbar-dynamic > .scroll-element.scroll-x.scroll-draggable .scroll-element_outer {
height: 20px;
min-height: 7px;
}
.scrollbar-dynamic > .scroll-element.scroll-y:hover .scroll-element_outer,
.scrollbar-dynamic > .scroll-element.scroll-y.scroll-draggable .scroll-element_outer {
min-width: 7px;
width: 20px;
}
/*************** SCROLLBAR GOOGLE CHROME ***************/
.scrollbar-chrome > .scroll-element,
.scrollbar-chrome > .scroll-element div
{
border: none;
margin: 0;
overflow: hidden;
padding: 0;
position: absolute;
z-index: 10;
}
.scrollbar-chrome > .scroll-element {
background-color: #ffffff;
}
.scrollbar-chrome > .scroll-element div {
display: block;
height: 100%;
left: 0;
top: 0;
width: 100%;
}
.scrollbar-chrome > .scroll-element .scroll-element_outer {}
.scrollbar-chrome > .scroll-element .scroll-element_track {
background: #f1f1f1;
border: 1px solid #dbdbdb;
}
.scrollbar-chrome > .scroll-element.scroll-x {
bottom: 0;
height: 16px;
left: 0;
min-width: 100%;
width: 100%;
}
.scrollbar-chrome > .scroll-element.scroll-y {
height: 100%;
min-height: 100%;
right: 0;
top: 0;
width: 16px;
}
.scrollbar-chrome > .scroll-element .scroll-bar {
background-color: #d9d9d9;
border: 1px solid #bdbdbd;
cursor: default;
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
border-radius: 2px;
}
.scrollbar-chrome > .scroll-element .scroll-bar:hover {
background-color: #c2c2c2;
border-color: #a9a9a9;
}
.scrollbar-chrome > .scroll-element.scroll-draggable .scroll-bar {
background-color: #919191;
border-color: #7e7e7e;
}
/* scrollbar height/width & offset from container borders */
.scrollbar-chrome > .scroll-content.scroll-scrolly_visible { left: -16px; margin-left: 16px; }
.scrollbar-chrome > .scroll-content.scroll-scrollx_visible { top: -16px; margin-top: 16px; }
.scrollbar-chrome > .scroll-element.scroll-x .scroll-bar { height: 8px; min-width: 10px; top: 3px; }
.scrollbar-chrome > .scroll-element.scroll-y .scroll-bar { left: 3px; min-height: 10px; width: 8px; }
.scrollbar-chrome > .scroll-element.scroll-x .scroll-element_outer { border-left: 1px solid #dbdbdb; }
.scrollbar-chrome > .scroll-element.scroll-x .scroll-element_track { height: 14px; left: -3px; }
.scrollbar-chrome > .scroll-element.scroll-x .scroll-element_size { height: 14px; left: -4px; }
.scrollbar-chrome > .scroll-element.scroll-y .scroll-element_outer { border-top: 1px solid #dbdbdb; }
.scrollbar-chrome > .scroll-element.scroll-y .scroll-element_track { top: -3px; width: 14px; }
.scrollbar-chrome > .scroll-element.scroll-y .scroll-element_size { top: -4px; width: 14px; }
/* update scrollbar offset if both scrolls are visible */
.scrollbar-chrome > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size { left: -19px; }
.scrollbar-chrome > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size { top: -19px; }
.scrollbar-chrome > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track { left: -19px; }
.scrollbar-chrome > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track { top: -19px; }

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

View File

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

View File

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 47 KiB

View File

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

View File

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

View File

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

View File

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB

View File

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

Before

Width:  |  Height:  |  Size: 182 KiB

After

Width:  |  Height:  |  Size: 182 KiB

View File

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

@@ -1,83 +1,69 @@
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<!-- To dev i recommand to enable this
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>
<meta http-equiv='cache-control' content='no-cache'> -->
<!-- Disable it if you Dev -->
<!-- 7 Days (604800 seconds)-->
<meta http-equiv='cache-control' content='max-age=604800, stale-while-revalidate=604800'>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<!-- Load all Scripts CSS -->
<link rel="stylesheet" href="css/dependencies/bootstrap.min.css">
<link rel="stylesheet" href="css/main.css">
<!-- Load all Scripts JS -->
<script type="text/javascript" src="js/dependencies/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="js/dependencies/bootstrap.bundle.min.js"></script>
<script type="text/javascript" src="js/dependencies/preloadjs.min.js"></script>
<script type="text/javascript" src="js/utilities/preload.js"></script>
<script type="text/javascript" src="js/main.js"></script>
<script type="text/javascript" src="js/utilities/audio.js"></script>
<script type="text/javascript" src="js/utilities/autoscroll.js"></script>
<!-- Disable it ! If want to disable a background changement when the launcher is started ! -->
<script type="text/javascript" src="js/utilities/randomizer_background.js"></script>
</head>
<body>
<div id="titlebar">
<div id="logo" class='left'>
<p id="fond_logo"></p>
<div id="version">
<p style="font-weight: bold; font-size:15px; margin: auto;">Monster Hunter</p>
<p style="font-weight: bold;font-size:15px;margin: auto;position:relative;bottom: 4px;">Frontier Z Launcher </p>
<p style="position:relative;bottom: 4px;margin: auto;">release ver. 2.016 (Erupe)</p>
</div>
<img id="ico_fond" src="ressources/icons/ico_title.png">
<img id="logo_pic" src="ressources/logo.png">
</div>
<div class='right'>
<a id="exit" class="nav-link" href="#" onclick="CUE_Selected()" onmouseover="CUE_Cursor()">&times;</a>
</div>
<div class='right'>
<a id="Reduce" class="nav-link" href="#" onclick="CUE_Selected()" onmouseover="CUE_Cursor()">_</a>
</div>
</div>
<div class="container-fluid" style="height: 47%!important;width: 51.8%;">
<div class="row no-gutters h-100">
<div class="col-12">
<iframe src="login.html" style="width: 100%; height: 100%; border: none; overflow:hidden;" frameBorder="0" scrolling="no"></iframe>
</div>
</div>
</div>
<div class="container-fluid px-0 h-25">
<div class="row no-gutters h-100">
<div class="col-12">
<div class="col-1" style="max-width: 3.5%;"></div>
<div id="Box_Diag">
<div id = "Dialog_Alert">
<div id="alertBox"></div>
<div id="alertBox-box"></div>
</div>
</div>
<div id="submitForm">
<button id="configButton" class="btn btn-secondary" onclick="CUE_Selected()" onmouseover="CUE_Cursor()">Config</button>
</div>
</div>
</div>
</div>
<footer id="footerID">
<div id="AllMark">
<div class="row">
<div class="column">
<a href="https://www.capcom.co.jp/" onclick="window.open(this.href); return false; CUE_Selected();" onmouseover="CUE_Cursor()"></a>
</div>
</div>
</div>
</footer>
<div id="BlockGlobal" style="display: none;">
<p style="width: 96.9%;height: 100%;background-image: url(./ressources/st_now.png);background-position: center;background-repeat: no-repeat;"></p>
</div>
</body>
</html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Monster Hunter Frontier Z Launcher</title>
<link rel="stylesheet" href="css/main.css">
</head>
<body>
<div id="main">
<div class="grabbable" unselectable="on" onselectstart="window.external.beginDrag(true); return false;"></div>
<div id="game_starting"></div>
<div id="window_controls"><div class="grabbable"></div>
<div class="unselectable button_min" onclick="window.external.minimizeWindow()" onmouseover="soundSel()">__</div>
<div class="unselectable button_close" onclick="window.external.closeWindow()" onmouseover="soundSel()"></div>
</div>
<div id="header"><div class="grabbable"></div>
<p class="background"></p>
<p class="title1">Monster Hunter</p>
<p class="title2">Frontier Z Launcher</p>
<p class="ver">release ver. 2.017 (Erupe)</p>
<img src="img/logo.png" width="303" height="114">
</div>
<div id="login">
<div id="processing"><p>Authenticating...</p></div>
<div class="login_form">
<form id="login_form" onsubmit="event.preventDefault();doLogin()">
<label for="username" class="unselectable label_username">Erupe ID</label>
<input type="text" id="username" placeholder="Username" onkeyup="soundSel()" onmouseover="soundSel()">
<label for="password" class="unselectable label_password">Password</label>
<input type="password" id="password" placeholder="Password" onkeyup="soundSel()" onmouseover="soundSel()">
<label for="server" class="label_server">Server</label>
<input type="text" id="server" value="Erupe" readonly>
<input type="submit">
</form>
</div>
<div class="unselectable login_button" onmouseenter="soundSel()" onclick="doLogin()"><span class="unselectable">Log In</span></div>
<div class="unselectable login_save"><input type="checkbox" id="login_save"><span id="login_save_text"> Remember Login</span></div>
</div>
<div id="char_select">
<div id="units"></div>
<div class="weapon_text">Current Weapon</div>
<div class="scroll up" onmouseover="soundSel()" onclick="soundOk();charselScrollUp()"></div>
<div class="scroll down" onmouseover="soundSel()" onclick="soundOk();charselScrollDown()"></div>
<div class="auto_login" onclick="autoWarning()"><input type="checkbox" id="auto_box"><span id="auto_text"> Auto-Login</span></div>
<div class="button_add" onmouseenter="soundSel()" onclick="soundOk();charselAdd()"><span class="unselectable">Add Character</span></div>
<div class="button_del" onmouseenter="soundSel()" onclick="soundOk();charselDel()"><span class="unselectable">Delete Character</span></div>
<div class="button_log" onmouseenter="soundSel()" onclick="soundOk();charselLog()"><span class="unselectable">Log Out</span></div>
<div class="button_start" onmouseenter="soundSel()" onclick="soundLogin();launch()"><span class="unselectable">Launch</span></div>
</div>
<div class="unselectable" id="log_outer">
<div class="log_inner">
<p id="log_p"></p>
</div>
</div>
<div class="unselectable" id="button_config" onclick="soundOk();window.external.openMhlConfig()" onmouseover="soundSel()"></div>
<div id="footer">
<div class="link" onclick="window.external.openBrowser('https://github.com/sekaiwish/Erupe')"><img src="img/icons/github.png"></div>
</div>
<div class="unselectable" id="dev">
<form action="javascript:void(0);">
<input type="text" id="console">
<input type="submit" value="eval()" onclick="doEval()">
</form>
</div>
</div>
<script src="js/script.js"></script>
</body>
</html>

View File

@@ -1,230 +0,0 @@
var DoOnceActive = true;
function createNormalAlert(message) {
parent.postMessage(message, "*");
}
function createGoodAlert(message) {
parent.postMessage(message, "*");
}
function createErrorAlert(message) {
parent.postMessage(message, "*");
}
function createCharListItem(name, uid, weapon, HR, GR, lastLogin, sex) {
var icon;
var active = "active";
const unixTimestamp = lastLogin;
const milliseconds = unixTimestamp * 1000;
const dateObject = new Date(milliseconds);
const humanDateFormat = dateObject.toLocaleString();
dateObject.toLocaleString("en-US", {weekday: "long"});
dateObject.toLocaleString("en-US", {month: "long"});
dateObject.toLocaleString("en-US", {day: "numeric"});
dateObject.toLocaleString("en-US", {year: "numeric"});
dateObject.toLocaleString("en-US", {timeZoneName: "short"});
lastLogin = humanDateFormat;
lastLogin = lastLogin.split(' ')[0];
if (sex == "M"){
sex = "♂";
}
else{
sex = "♀";
}
if (HR > 999){
HR = 999;
}
if (GR > 999){
GR = "999";
}
if (weapon == "片手剣"){
weapon = "Sword & Shield";
icon = "./ressources/icons/SS.png";
}
else if (weapon == "双剣"){
weapon = "Dual Swords";
icon = "./ressources/icons/DS.png";
}
else if (weapon == "大剣"){
weapon = "Great Sword";
icon = "./ressources/icons/GS.png";
}
else if (weapon == "太刀"){
weapon = "Long Sword";
icon = "./ressources/icons/LS.png";
}
else if (weapon == "ハンマー"){
weapon = "Hammer";
icon = "./ressources/icons/H.png";
}
else if (weapon == "狩猟笛"){
weapon = "Hunting Horn";
icon = "./ressources/icons/HH.png";
}
else if (weapon == "ランス"){
weapon = "Lance";
icon = "./ressources/icons/L.png";
}
else if (weapon == "ガンランス"){
weapon = "Gunlance";
icon = "./ressources/icons/GL.png";
}
else if (weapon == "穿龍棍"){
weapon = "Tonfa";
icon = "./ressources/icons/T.png";
}
else if (weapon == "スラッシュアックスF"){
weapon = "Switch Axe F";
icon = "./ressources/icons/SAF.png";
}
else if (weapon == "マグネットスパイク"){
weapon = "Magnet Spike";
icon = "./ressources/icons/MS.png";
}
else if (weapon == "ヘビィボウガン"){
weapon = "Heavy Bowgun";
icon = "./ressources/icons/HS.png";
}
else if (weapon == "ライトボウガン"){
weapon = "Light Bowgun";
icon = "./ressources/icons/LB.png";
}
else if (weapon == "弓"){
weapon = "Bow";
icon = "./ressources/icons/B.png";
}
else{
weapon = "Unknown"
icon = "./ressources/icons/null.png";
}
if (DoOnceActive){
DoOnceActive = false;
var topDiv = $('<div/>')
.attr("href", "#")
.attr("uid", uid)
.addClass("char-list-entry list-group-item list-group-item-action flex-column align-items-start active");
}
else{
var topDiv = $('<div/>')
.attr("href", "#")
.attr("uid", uid)
.addClass("char-list-entry list-group-item list-group-item-action flex-column align-items-start");
}
var topLine = $('<div/>')
.addClass("Name_Player")
.append($('<h1/>').addClass("mb-1").text(name)
);
var bottomLine = $('<div/>')
.addClass("Info")
.append($('<div id="icon_weapon"/>').prepend($('<img>',{id:'theImg',src:icon})))
.append($('<div id="weapon_title"/>').text('Current Weapon'))
.append($('<div id="weapon_name"/>').text(weapon))
.append($('<div id="hr_lvl"/>').text('HR' + HR))
.append($('<div id="gr_lvl"/>').text('GR' + GR))
.append($('<div id="sex"/>').text(sex))
.append($('<div id="uid"/>').text('ID: ' + uid))
.append($('<div id="lastlogin"/>').text('LastLogin ' + lastLogin));
topDiv.append(topLine);
topDiv.append(bottomLine);
$("#characterlist").append(topDiv);
}
$(function () {
try {
var charInfo = window.external.getCharacterInfo();
} catch (e) {
createErrorAlert("Error on getCharacterInfo!");
}
try {
$xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
$xmlDoc.async = "false";
$xmlDoc.loadXML(charInfo);
$xml = $($xmlDoc);
} catch (e) {
createErrorAlert("Error parsing character info xml!" + e);
}
try {
$($xml).find("Character").each(function () {
createCharListItem(
$(this).attr('name'),
$(this).attr('uid'),
$(this).attr('weapon'),
$(this).attr('HR'),
$(this).attr('GR'),
$(this).attr('lastLogin'),
$(this).attr('sex')
);
});
} catch (e) {
createErrorAlert("Error searching character info xml!");
}
$(".char-list-entry").click(function () {
if (!$(this).hasClass("active")) {
$(".char-list-entry.active").removeClass("active");
$(this).addClass("active");
}
});
$(function() {
var selectedUid = $(".char-list-entry.active").attr("uid");
$("#bt_new_char").on("click", function(e) {
alert("NOT WORK");
});
$("#bt_delete_char").on("click", function(e) {
alert("NOT WORK");
});
});
$("#bt_confirm").on("click", function () {
try{
elementID = parent.document.getElementById("BlockGlobal");
elementID.style.display = "block";
} catch(e) {
alert(e);
}
var selectedUid = $(".char-list-entry.active").attr("uid");
try {
window.external.selectCharacter(selectedUid, selectedUid)
} catch (e) {
createErrorAlert("Error on select character!");
try{
elementID = parent.document.getElementById("BlockGlobal");
elementID.style.display = "none";
} catch(e) {
alert(e);
}
}
setTimeout(function () {
window.external.exitLauncher();
}, 3000);
});
});
// Enable to read JP text
function isKanji(ch) {
return (ch >= "\u4e00" && ch <= "\u9faf") ||
(ch >= "\u3400" && ch <= "\u4dbf");
}
function accumulativeParser(str, condition) {
let accumulations = [];
let accumulator = "";
for (let i = 0; i < str.length; ++i) {
let ch = str[i];
if (condition(x)) {
accumulator += ch;
} else if (accumulator !== "") {
accumulations.push(accumulator);
accumulator = "";
}
}
return accumulations;
}
function parseKanjiCompounds(str) {
return accumulativeParser(str, isKanji);
}

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,6 +0,0 @@
/**
* @preserve HTML5 Shiv 3.7.3 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
*/
!function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=t.elements;return"string"==typeof a?a.split(" "):a}function e(a,b){var c=t.elements;"string"!=typeof c&&(c=c.join(" ")),"string"!=typeof a&&(a=a.join(" ")),t.elements=c+" "+a,j(b)}function f(a){var b=s[a[q]];return b||(b={},r++,a[q]=r,s[r]=b),b}function g(a,c,d){if(c||(c=b),l)return c.createElement(a);d||(d=f(c));var e;return e=d.cache[a]?d.cache[a].cloneNode():p.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!e.canHaveChildren||o.test(a)||e.tagUrn?e:d.frag.appendChild(e)}function h(a,c){if(a||(a=b),l)return a.createDocumentFragment();c=c||f(a);for(var e=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)e.createElement(h[g]);return e}function i(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return t.shivMethods?g(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-:]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(t,b.frag)}function j(a){a||(a=b);var d=f(a);return!t.shivCSS||k||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),l||i(a,d),a}var k,l,m="3.7.3",n=a.html5||{},o=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,p=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,q="_html5shiv",r=0,s={};!function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",k="hidden"in a,l=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){k=!0,l=!0}}();var t={elements:n.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:m,shivCSS:n.shivCSS!==!1,supportsUnknownElements:l,shivMethods:n.shivMethods!==!1,type:"default",shivDocument:j,createElement:g,createDocumentFragment:h,addElements:e};a.html5=t,j(b),"object"==typeof module&&module.exports&&(module.exports=t)}("undefined"!=typeof window?window:this,document);

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -1,79 +0,0 @@
function createNormalAlert(message) {
parent.postMessage(message, "*");
}
function createGoodAlert(message) {
parent.postMessage(message, "*");
}
function createErrorAlert(message) {
elementID.style.display = "none";
parent.postMessage(message, "*");
}
// Add global variables to block page when is loading.
var elementID;
// Function to continually check if we got a login result yet,
// then navigating to the character selection if we did.
function checkAuthResult() {
var loginResult = window.external.getLastAuthResult();
console.log('|' + loginResult + '|');
if(loginResult == "AUTH_PROGRESS") {
setTimeout(checkAuthResult, 10);
} else if (loginResult == "AUTH_SUCCESS") {
saveAccount();
createGoodAlert("Connected.");
createNormalAlert("After selecting a character, press [Start] button.");
window.location.href = 'charsel.html'
} else {
elementID.style.display = "none";
createErrorAlert("Error logging in ! ");
}
}
function saveAccount() {
var userName = document.getElementById("username").value;
var password = document.getElementById("password").value;
var checkBox = document.getElementById("saveAccount");
if (checkBox.checked == true){
localStorage.setItem('pseudo', userName);
localStorage.setItem('pswd', password);
localStorage.setItem('svAccount','true');
} else {
var userNameSaved = localStorage.removeItem('pseudo');
var passwordSaved = localStorage.removeItem('pswd');
var checkBoxSaved = localStorage.removeItem('svAccount');
}
}
function showKeyCode(e) {
var audio = new Audio("./audio/sys_cursor.mp3");
audio.play();
}
$(function() {
elementID = document.getElementById("Block");
// Login form submission.
$("#loginform").submit(function(e){
e.preventDefault();
elementID.style.display = "block";
username = $("#username").val();
password = $("#password").val();
if (username == ""){
createErrorAlert("Please insert Erupe ID !");
}
if (password == ""){
createErrorAlert("Please insert Password !");
}
else{
createNormalAlert("Authentification...");
try{
window.external.loginCog(username, password, password);
} catch(e){
createErrorAlert("Error on loginCog: " + e + ".");
}
checkAuthResult();
}
});
});

View File

@@ -1,154 +0,0 @@
// Helper function to dynamically create Winsock alert box
function createWinsockAlert(message) {
var tmpDiv = $('<div/>')
.attr("class", "WinsockAlertBoxID")
.attr("role", "alert")
.addClass("alert alert-info")
tmpDiv.append(message);
$("#alertBox").append(tmpDiv);
scrollToBottom();
}
// Helper function to dynamically create normal alert box
function createNormalAlert(message) {
var tmpDiv = $('<div/>')
.attr("class", "NormalAlertBoxID")
.attr("role", "alert")
.addClass("alert alert-secondary")
tmpDiv.append(message);
$("#alertBox").append(tmpDiv);
scrollToBottom();
}
// Helper function to dynamically create good alert box
function createGoodAlert(message) {
var tmpDiv = $('<div/>')
.attr("class", "GoodAlertBoxID")
.attr("role", "alert")
.addClass("alert alert-success")
tmpDiv.append(message);
$("#alertBox").append(tmpDiv);
scrollToBottom();
}
function createErrorAlert(message) {
var tmpDiv = $('<div/>')
.attr("class", "ErrorAlertBoxID")
.attr("role", "alert")
.addClass("alert alert-danger")
tmpDiv.append(message);
$("#alertBox").append(tmpDiv);
scrollToBottom();
}
function scrollToBottom() {
const messages = document.getElementById('alertBox');
if (messages != null)
messages.scrollTop = messages.scrollHeight;
}
$(function() {
$("#configButton").click(function(){
try{
window.external.openMhlConfig();
} catch(e){
createErrorAlert("Error on openMhlConfig: " + e);
}
});
});
$(function() {
$("#titlebar").on("click", function(e) {
window.external.beginDrag(true);
});
$("#exit").on("click", function(e) {
window.external.closeWindow();
});
$("#Reduce").on("click", function(e) {
window.external.minimizeWindow();
});
$(window).on("message onmessage", function(e) {
var data = e.originalEvent.data;
CheckMessage(data);
});
doLauncherInitalize();
});
function CheckMessage(message){
// Good Alert
if (message == "Connected."){
createGoodAlert(message);
}
// Normal Alert
else if (message == "Authentification..."){
createNormalAlert(message);
}
else if (message == "After selecting a character, press [Start] button."){
createNormalAlert(message);
}
// Error Alert
else {
createErrorAlert(message);
}
}
function doLauncherInitalize() {
createWinsockAlert("Winsock Ver. [2.2]");
createNormalAlert("After entering Erupe ID and Password, press [Connect] button.");
try{
window.external.getMhfMutexNumber();
} catch(e){
createErrorAlert("Error getting Mhf mutex number! " + e + ".");
}
try{
var serverListXml = window.external.getServerListXml();
} catch(e){
createErrorAlert("Error getting serverlist.xml! " + e + ".");
}
if(serverListXml == ""){
createErrorAlert("Got empty serverlist.xml!");
}
console.log(serverListXml);
try{
var lastServerIndex = window.external.getIniLastServerIndex();
} catch(e){
createErrorAlert("Error on getIniLastServerIndex: " + e + ".");
}
console.log("Last server index:" + lastServerIndex);
try{
window.external.setIniLastServerIndex(0);
} catch(e){
createErrorAlert("Error on setIniLastServerIndex: " + e + ".");
}
try{
var mhfBootMode = window.external.getMhfBootMode();
} catch(e){
createErrorAlert("Error on getMhfBootMode: " + e + ".");
}
console.log("mhfBootMode:" + mhfBootMode);
try{
var userId = window.external.getUserId();
} catch(e){
createErrorAlert("Error on getUserId: " + e + ".");
}
console.log("userId:" + userId);
try{
var password = window.external.getPassword();
} catch(e){
createErrorAlert("Error on getPassword: " + e + ".");
}
console.log("password:" + password);
}

View File

@@ -0,0 +1,409 @@
var __mhf_launcher = {};
var loginScreen = true;
var doingAuto = false;
var uids;
var selectedUid;
var firstChar;
function soundSel() {
window.external.playSound('IDR_WAV_SEL');
}
function soundOk() {
window.external.playSound('IDR_WAV_OK');
}
function soundPreLogin() {
window.external.playSound('IDR_WAV_PRE_LOGIN');
}
function soundLogin() {
window.external.playSound('IDR_WAV_LOGIN');
}
function soundNiku() {
window.external.playSound('IDR_NIKU');
}
function addLog(text, mode) {
switch (mode) {
case 'winsock':
text = '<span class="winsock">'+text+'</span><br>';
break;
case 'normal':
text = '<span class="white">'+text+'</span><br>';
break;
case 'good':
text = '<span class="green">'+text+'</span><br>';
break;
case 'error':
text = '<span class="red">'+text+'</span><br>';
break;
}
let logText = document.getElementById('log_p');
logText.innerHTML = logText.innerHTML + text;
let logBox = document.getElementsByClassName('log_inner')[0];
logBox.scrollTop = logBox.scrollHeight;
}
function loadAccount() {
let allowed = localStorage.getItem('saving');
if (allowed != 'null' && allowed == 'true') {
document.getElementById('username').value = localStorage.getItem('username');
document.getElementById('password').value = localStorage.getItem('password');
document.getElementById('login_save').checked = true;
let autoEnabled = localStorage.getItem('autologin');
if (autoEnabled != 'null' && autoEnabled == 'true') {
doingAuto = true;
doLogin();
}
}
}
function saveAccount() {
let checkbox = document.getElementById('login_save');
if (checkbox.checked == true) {
let username = document.getElementById('username').value;
let password = document.getElementById('password').value;
if (username[username.length - 1] == '+') {
username = username.slice(0, username.length - 1)
}
localStorage.setItem('username', username);
localStorage.setItem('password', password);
localStorage.setItem('saving', 'true');
} else {
localStorage.removeItem('username');
localStorage.removeItem('password');
localStorage.removeItem('saving');
localStorage.removeItem('uid');
}
}
function createCharItem(name, uid, weapon, hr, gr, date, sex) {
var icon;
const dateObject = new Date(date * 1000);
date = dateObject.toLocaleDateString('en-US');
let dateString = '';
for (var i = 0; i < date.length; i++) {
if (date[i] != '') { // invisible LTR char
dateString += date[i];
}
}
if (sex == 'M') {
sex = "♂";
} else {
sex = "♀";
}
if (hr > 999) {
hr = 999;
}
if (gr > 999) {
gr = 999;
}
switch (weapon) {
case '片手剣':
weapon = 'Sword & Shield';
icon = 'img/icons/ss.png';
break;
case '双剣':
weapon = 'Dual Blades';
icon = 'img/icons/db.png';
break;
case '大剣':
weapon = 'Greatsword';
icon = 'img/icons/gs.png';
break;
case '太刀':
weapon = 'Long Sword';
icon = 'img/icons/ls.png';
break;
case 'ハンマー':
weapon = 'Hammer';
icon = 'img/icons/hm.png';
break;
case '狩猟笛':
weapon = 'Hunting Horn';
icon = 'img/icons/hh.png';
break;
case 'ランス':
weapon = 'Lance';
icon = 'img/icons/ln.png';
break;
case 'ガンランス':
weapon = 'Gunlance';
icon = 'img/icons/gl.png';
break;
case '穿龍棍':
weapon = 'Tonfa';
icon = 'img/icons/tf.png';
break;
case 'スラッシュアックスF':
weapon = 'Switch Axe F';
icon = 'img/icons/sa.png';
break;
case 'マグネットスパイク':
weapon = 'Magnet Spike';
icon = 'img/icons/ms.png';
break;
case 'ヘビィボウガン':
weapon = 'Heavy Bowgun';
icon = 'img/icons/hbg.png';
break;
case 'ライトボウガン':
weapon = 'Light Bowgun';
icon = 'img/icons/lbg.png';
break;
case '弓':
weapon = 'Bow';
icon = 'img/icons/bow.png';
break;
default:
weapon = 'Unknown';
icon = 'img/icons/uk.png';
}
let charElem = document.createElement('DIV');
charElem.setAttribute('href', '#');
charElem.id = uid;
charElem.classList.add('unit');
if (firstChar) {
firstChar = false;
selectedUid = uid;
charElem.classList.add('active');
}
let elemName = document.createElement('DIV');
elemName.id = 'char_name';
elemName.innerHTML = name;
charElem.appendChild(elemName);
let elemWeapon = document.createElement('DIV');
elemWeapon.id = 'char_weapon';
elemWeapon.innerHTML = weapon;
charElem.appendChild(elemWeapon);
let elemHr = document.createElement('DIV');
elemHr.id = 'char_hr';
elemHr.innerHTML = 'HR'+hr;
charElem.appendChild(elemHr);
let elemGr = document.createElement('DIV');
elemGr.id = 'char_gr';
elemGr.innerHTML = 'GR'+gr;
charElem.appendChild(elemGr);
let elemSex = document.createElement('DIV');
elemSex.id = 'char_sex';
elemSex.innerHTML = sex;
charElem.appendChild(elemSex);
let elemUid = document.createElement('DIV');
elemUid.id = 'char_uid';
elemUid.innerHTML = 'ID: '+uid;
charElem.appendChild(elemUid);
let elemLastLogin = document.createElement('DIV');
elemLastLogin.id = 'char_login';
elemLastLogin.innerHTML = 'Last Login: '+dateString;
charElem.appendChild(elemLastLogin);
let iconElem = document.createElement('IMG');
iconElem.src = icon;
charElem.appendChild(iconElem);
let unitsElem = document.getElementById('units');
unitsElem.appendChild(charElem);
}
function switchPrompt() {
loginScreen = !loginScreen;
if (loginScreen) {
document.getElementById('units').innerHTML = '';
document.getElementById('char_select').style.display = 'none';
document.getElementById('login').style.display = 'block';
} else { // Character selector
document.getElementById('login').style.display = 'none';
document.getElementById('char_select').style.display = 'block';
try {
// Example data for browser testing
//var charInfo = "<?xml version='1.0' encoding='shift_jis'?><CharacterInfo defaultUid=''><Character name='Cynthia' uid='211111' weapon='双剣' HR='7' GR='998' lastLogin='1645961490' sex='F' /><Character name='狩人申請可能' uid='311111' weapon='大剣' HR='7' GR='0' lastLogin='1650486502' sex='M' /></CharacterInfo>";
var charInfo = window.external.getCharacterInfo();
charInfo = charInfo.split("'").join('"');
charInfo = charInfo.split('&apos;').join("'");
} catch (e) {
addLog('Error getting character info: '+e, 'error');
}
try {
firstChar = true;
uids = new Array();
parser = new DOMParser();
let xml = parser.parseFromString(charInfo, 'text/xml');
let numChars = xml.getElementsByTagName('Character').length;
for (var i = 0; i < numChars; i++) {
let char = xml.getElementsByTagName('Character')[i].attributes;
createCharItem(
char.name.value,
char.uid.value,
char.weapon.value,
char.HR.value,
char.GR.value,
char.lastLogin.value,
char.sex.value
);
uids.push(char.uid.value);
}
} catch (e) {
addLog('Error parsing character info XML: '+e, 'error');
}
let uid = localStorage.getItem('uid');
if (uid != 'null' && uids.indexOf(uid) >= 0) {
setUidIndex(uids.indexOf(uid));
}
}
}
function doLogin() {
let username = document.getElementById('username').value;
let password = document.getElementById('password').value;
if (username == '') {
addLog('Please enter Erupe ID!', 'error');
} else if (password == '') {
addLog('Please enter Password!', 'error');
} else {
document.getElementById('processing').style.display = 'block';
soundPreLogin();
addLog('Authenticating...', 'normal');
try {
window.external.loginCog(username, password, password);
} catch (e) {
addLog('Error on loginCog: '+e, 'error');
}
checkAuth();
}
}
function checkAuth() {
let loginResult = window.external.getLastAuthResult();
if (loginResult == 'AUTH_PROGRESS') {
setTimeout(checkAuth, 10);
return;
} else if (loginResult == 'AUTH_SUCCESS') {
saveAccount();
addLog('Connected.', 'good');
if (doingAuto) {
let uid = localStorage.getItem('uid');
window.external.selectCharacter(uid, uid);
window.external.exitLauncher();
} else {
addLog('After selecting a character, press [Launch]', 'normal');
switchPrompt();
}
} else {
addLog('Error logging in: '+loginResult+':'+window.external.getSignResult(), 'error');
}
document.getElementById('processing').style.display = 'none';
}
function launch() {
document.getElementById('game_starting').style.display = 'block';
try {
window.external.selectCharacter(selectedUid, selectedUid);
} catch (e) {
addLog('Error selecting character: '+e, 'error');
document.getElementById('game_starting').style.display = 'none';
}
let allowed = localStorage.getItem('saving');
if (allowed != 'null' && allowed == 'true') {
localStorage.setItem('uid', selectedUid);
let autoBox = document.getElementById('auto_box');
if (autoBox.checked) {
localStorage.setItem('autologin', true);
}
}
setTimeout(function () {
window.external.exitLauncher();
}, 3000);
}
function autoWarning() {
let autoBox = document.getElementById('auto_box');
if (autoBox.checked) {
addLog('Auto-Login is for advanced users, to disable it you will need to clear your IE cache. Uncheck the box now if you are not an advanced user.', 'error');
}
}
function charselScrollUp() {
let index = uids.indexOf(selectedUid) - 1;
if (index < 0) {
index = uids.length - 1;
}
setUidIndex(index);
}
function charselScrollDown() {
let index = uids.indexOf(selectedUid) + 1;
if (index == uids.length) {
index = 0;
}
setUidIndex(index);
}
function setUidIndex(index) {
let units = document.getElementsByClassName('unit');
let numUnits = units.length;
for (var i = 0; i < numUnits; i++) {
units[i].classList.remove('active');
}
selectedUid = uids[index];
document.getElementById(selectedUid).classList.add('active');
}
function charselAdd() {
addLog("Press [Log Out], then add a '+' to the end of your username to create a new character.", 'normal');
}
function charselDel() {
addLog('Not yet implemented.', 'error');
}
function charselLog() {
addLog('Disconnected.', 'error');
addLog('Enter Erupe ID and Password, then press [Log In]', 'normal');
switchPrompt();
}
function doEval() {
try {
addLog(eval(document.getElementById('console').value), 'error');
} catch (e) {
addLog('Error on doEval: '+e, 'error');
}
}
function init() {
document.addEventListener('keypress', function(e) {
if (e.key == '~') {
document.getElementById('dev').style.display = 'block';
}
});
let unselectable = document.getElementsByClassName('unselectable');
let unselectableLen = unselectable.length;
for (var i = 0; i < unselectableLen; i++) {
unselectable[i].setAttribute('unselectable', 'on');
unselectable[i].addEventListener('selectstart', function(){return false;});
unselectable[i].addEventListener('mouseover', function(){window.external.beginDrag(false);});
}
let grabbable = document.getElementsByClassName('grabbable');
let grabbableLen = grabbable.length;
for (var i = 0; i < grabbableLen; i++) {
grabbable[i].addEventListener('selectstart', function(){window.external.beginDrag(true);});
grabbable[i].addEventListener('mousedown', function(){window.external.beginDrag(true);});
grabbable[i].addEventListener('mouseup', function(){window.external.beginDrag(true);});
}
document.getElementById('login_save_text').addEventListener('click', function() {
let checkbox = document.getElementById('login_save');
checkbox.checked = !checkbox.checked;
});
document.getElementById('auto_text').addEventListener('click', function() {
let checkbox = document.getElementById('auto_box');
checkbox.checked = !checkbox.checked;
});
document.getElementById('username').focus();
loadAccount();
addLog('Winsock Ver. [2.2]', 'winsock');
addLog('Enter Erupe ID and Password, then press [Log In]', 'normal');
}
init();

View File

@@ -1,16 +0,0 @@
function CUE_Cursor(){
var music = new Audio('./audio/sys_cursor.mp3');
music.play();
}
function CUE_Selected(){
var music = new Audio('./audio/sys_select.mp3');
music.play();
}
function CUE_Confirm(){
var music = new Audio('./audio/sys_confirm.mp3');
music.play();
}
function CUE_Starting(){
var music = new Audio('./audio/sys_starting.mp3');
music.play();
}

View File

@@ -1,56 +0,0 @@
var preload = new createjs.LoadQueue();
// Preload Global
preload.loadFile("./ressources/bt_charsel.jpg");
preload.loadFile("./ressources/bt_config.png");
preload.loadFile("./ressources/bt_config_hover.png");
preload.loadFile("./ressources/bt_down_charsel.png");
preload.loadFile("./ressources/bt_down_charsel_hover.png");
preload.loadFile("./ressources/bt_launch.png");
preload.loadFile("./ressources/bt_launch_hover.png");
preload.loadFile("./ressources/bt_sub.png");
preload.loadFile("./ressources/bt_sub_hover.png");
preload.loadFile("./ressources/bt_up_charsel.png");
preload.loadFile("./ressources/bt_up_charsel_hover.png");
preload.loadFile("./ressources/capcom_ico.png");
preload.loadFile("./ressources/capcom_trad_ico.png");
preload.loadFile("./ressources/load.gif");
preload.loadFile("./ressources/logo.png");
preload.loadFile("./ressources/st_now.png");
// Preload all Bakcground
preload.loadFile("./ressources/background/1.jpg");
preload.loadFile("./ressources/background/2.jpg");
preload.loadFile("./ressources/background/3.jpg");
preload.loadFile("./ressources/background/4.jpg");
preload.loadFile("./ressources/background/5.jpg");
//Preload All Icons
preload.loadFile("./ressources/icons/ico_title.png");
preload.loadFile("./ressources/icons/B.png");
preload.loadFile("./ressources/icons/DS.png");
preload.loadFile("./ressources/icons/GL.png");
preload.loadFile("./ressources/icons/GS.png");
preload.loadFile("./ressources/icons/H.png");
preload.loadFile("./ressources/icons/HH.png");
preload.loadFile("./ressources/icons/HS.png");
preload.loadFile("./ressources/icons/L.png");
preload.loadFile("./ressources/icons/LB.png");
preload.loadFile("./ressources/icons/LS.png");
preload.loadFile("./ressources/icons/MS.png");
preload.loadFile("./ressources/icons/null.png");
preload.loadFile("./ressources/icons/SAF.png");
preload.loadFile("./ressources/icons/SS.png");
preload.loadFile("./ressources/icons/T.png");
// Prempad All Sounds
preload.loadFile("./audio/sys_confirm.mp3");
preload.loadFile("./audio/sys_cursor.mp3");
preload.loadFile("./audio/sys_select.mp3");
preload.loadFile("./audio/sys_starting.mp3");
// Preload Gif
preload.loadFile("./ressources/load.gif");

View File

@@ -1,6 +0,0 @@
var images = ['1.jpg', '2.jpg', '3.jpg', '4.jpg', '5.jpg', '7.png', '8.png', '9.png'];
var randomImage = Math.floor(Math.random() * images.length)
$(document).ready(function()
{
$("body").css("background-image", "url('./ressources/Background/" + images[randomImage] + "')");
})

View File

@@ -1,20 +0,0 @@
var userNameSaved = localStorage.getItem('pseudo');
var passwordSaved = localStorage.getItem('pswd');
var checkBoxSaved = localStorage.getItem('svAccount');
if (userNameSaved != "null"){
document.getElementById("username").value = userNameSaved;
}
if (passwordSaved != "null"){
document.getElementById("password").value = passwordSaved;
}
if (checkBoxSaved != "null"){
if (checkBoxSaved == "true"){
var checkBox = document.getElementById("saveAccount");
checkBox.checked = true;
} else {
var userNameSaved = localStorage.removeItem('pseudo');
var passwordSaved = localStorage.removeItem('pswd');
var checkBoxSaved = localStorage.removeItem('svAccount');
}
}

View File

@@ -1,40 +0,0 @@
// Create New Variables
var time = 100; // Timer to react
var target;
var targetOffset;
// Button Top
$("#bt_up_char_list").on("click" ,function(e){
e.preventDefault();
target = $('.char-list-entry.active').prev('.char-list-entry');
if (target.length == 0)
target = $('.char-list-entry:last');
scrollTo(target);
$('.active').removeClass('active');
target.addClass('active');
});
// Button Bottom
$("#bt_down_char_list").on("click" ,function(e){
e.preventDefault();
target = $('.char-list-entry.active').next('.char-list-entry');
if (target.length == 0)
target = $('.char-list-entry:first');
scrollTo(target);
$('.active').removeClass('active');
target.addClass('active');
});
// Work Animation
function scrollTo(selector) {
var offset = $(selector).offset();
var $characterlist = $('#characterlist');
$characterlist.animate({
scrollTop: offset.top - ($characterlist.offset().top - $characterlist.scrollTop())
}, time);
}

View File

@@ -1,54 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<!-- To dev i recommand to enable this -->
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>
<meta http-equiv='cache-control' content='no-cache'>
<!-- Disable it if you Dev -->
<!-- 7 Days (604800 seconds)-->
<!--<meta http-equiv='cache-control' content='max-age=604800, stale-while-revalidate=604800'>-->
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<link rel="stylesheet" href="css/dependencies/bootstrap.min.css">
<link rel="stylesheet" href="css/login.css">
<script type="text/javascript" src="js/dependencies/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="js/dependencies/bootstrap.bundle.min.js"></script>
<script type="text/javascript" src="js/login.js"></script>
<script type="text/javascript" src="js/utilities/audio.js"></script>
</head>
<body>
<div class="container">
<div class="row">
<div class="col-1" style="max-width: 3.5%;"></div>
<div class="col-6">
<div class="segment">
<form id="loginform">
<h5 class="mb-1" style="font-size: 16px;color: White; position: relative; left: 5px;" ><b>Erupe ID</b></h5>
<div class="form-group">
<input type="text" class="form-control" id="username" placeholder="Username" onkeyup="showKeyCode(event);" onclick="CUE_Selected()" onmouseover="CUE_Cursor()" value="" autocomplete="on">
</div>
<h5 class="mb-1" style="font-size: 16px;color: White; position: relative; left: 5px;" ><b>Password</b></h5>
<div class="form-group">
<input type="password" class="form-control" id="password" placeholder="Password" onkeyup="showKeyCode(event);" onclick="CUE_Selected()" onmouseover="CUE_Cursor()" value="" autocomplete="on">
</div>
<h5 class="mb-1" style="font-size: 16px;color: White; position: relative; left: 5px;" ><b>Server Selection</b></h5>
<div class="form-group">
<input type="text" class="form-control" id="ServerName" placeholder="Erupe Server 1" readonly>
</div>
<button id="submitButton" type="submit" class="btn btn-primary" onclick="CUE_Confirm();" onmouseover="CUE_Cursor()">CONNECT</button>
</form>
<div id="CheckBoxSaveUser" >
<input type="checkbox" id="saveAccount" name="saveAccount" style=" position: relative; left: 12px; cursor: pointer;">
<label for="scales" style=" position: relative; left: 25px; bottom: 1.58px; cursor: pointer;">Save Account</label>
</div>
</div>
</div>
</div>
</div>
<div id="Block" style="display: none;">
<img src="ressources/load.gif" style="width: 32px;position: absolute;left: 190px;top: 125px;">
</div>
</body>
<script type="text/javascript" src="js/utilities/saveaccount.js"></script>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 434 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 571 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 458 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 574 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 427 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 899 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB