mirror of
https://github.com/hypervortex/VH-Bombsquad-Modded-Server-Files
synced 2025-11-07 17:36:08 +00:00
Added new files
This commit is contained in:
parent
5e004af549
commit
77ccb73089
1783 changed files with 566966 additions and 0 deletions
123
dist/ba_data/python/bastd/ui/report.py
vendored
Normal file
123
dist/ba_data/python/bastd/ui/report.py
vendored
Normal file
|
|
@ -0,0 +1,123 @@
|
|||
# Released under the MIT License. See LICENSE for details.
|
||||
#
|
||||
"""UI related to reporting bad behavior/etc."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import ba
|
||||
import ba.internal
|
||||
|
||||
|
||||
class ReportPlayerWindow(ba.Window):
|
||||
"""Player for reporting naughty players."""
|
||||
|
||||
def __init__(self, account_id: str, origin_widget: ba.Widget):
|
||||
self._width = 550
|
||||
self._height = 220
|
||||
self._account_id = account_id
|
||||
self._transition_out = 'out_scale'
|
||||
scale_origin = origin_widget.get_screen_space_center()
|
||||
|
||||
overlay_stack = ba.internal.get_special_widget('overlay_stack')
|
||||
uiscale = ba.app.ui.uiscale
|
||||
super().__init__(
|
||||
root_widget=ba.containerwidget(
|
||||
size=(self._width, self._height),
|
||||
parent=overlay_stack,
|
||||
transition='in_scale',
|
||||
scale_origin_stack_offset=scale_origin,
|
||||
scale=(
|
||||
1.8
|
||||
if uiscale is ba.UIScale.SMALL
|
||||
else 1.35
|
||||
if uiscale is ba.UIScale.MEDIUM
|
||||
else 1.0
|
||||
),
|
||||
)
|
||||
)
|
||||
self._cancel_button = ba.buttonwidget(
|
||||
parent=self._root_widget,
|
||||
scale=0.7,
|
||||
position=(40, self._height - 50),
|
||||
size=(50, 50),
|
||||
label='',
|
||||
on_activate_call=self.close,
|
||||
autoselect=True,
|
||||
color=(0.4, 0.4, 0.5),
|
||||
icon=ba.gettexture('crossOut'),
|
||||
iconscale=1.2,
|
||||
)
|
||||
ba.containerwidget(
|
||||
edit=self._root_widget, cancel_button=self._cancel_button
|
||||
)
|
||||
ba.textwidget(
|
||||
parent=self._root_widget,
|
||||
position=(self._width * 0.5, self._height * 0.64),
|
||||
size=(0, 0),
|
||||
color=(1, 1, 1, 0.8),
|
||||
scale=1.2,
|
||||
h_align='center',
|
||||
v_align='center',
|
||||
text=ba.Lstr(resource='reportThisPlayerReasonText'),
|
||||
maxwidth=self._width * 0.85,
|
||||
)
|
||||
ba.buttonwidget(
|
||||
parent=self._root_widget,
|
||||
size=(235, 60),
|
||||
position=(20, 30),
|
||||
label=ba.Lstr(resource='reportThisPlayerLanguageText'),
|
||||
on_activate_call=self._on_language_press,
|
||||
autoselect=True,
|
||||
)
|
||||
ba.buttonwidget(
|
||||
parent=self._root_widget,
|
||||
size=(235, 60),
|
||||
position=(self._width - 255, 30),
|
||||
label=ba.Lstr(resource='reportThisPlayerCheatingText'),
|
||||
on_activate_call=self._on_cheating_press,
|
||||
autoselect=True,
|
||||
)
|
||||
|
||||
def _on_language_press(self) -> None:
|
||||
from urllib import parse
|
||||
|
||||
ba.internal.add_transaction(
|
||||
{
|
||||
'type': 'REPORT_ACCOUNT',
|
||||
'reason': 'language',
|
||||
'account': self._account_id,
|
||||
}
|
||||
)
|
||||
body = ba.Lstr(resource='reportPlayerExplanationText').evaluate()
|
||||
ba.open_url(
|
||||
'mailto:support@froemling.net'
|
||||
f'?subject={ba.internal.appnameupper()} Player Report: '
|
||||
+ self._account_id
|
||||
+ '&body='
|
||||
+ parse.quote(body)
|
||||
)
|
||||
self.close()
|
||||
|
||||
def _on_cheating_press(self) -> None:
|
||||
from urllib import parse
|
||||
|
||||
ba.internal.add_transaction(
|
||||
{
|
||||
'type': 'REPORT_ACCOUNT',
|
||||
'reason': 'cheating',
|
||||
'account': self._account_id,
|
||||
}
|
||||
)
|
||||
body = ba.Lstr(resource='reportPlayerExplanationText').evaluate()
|
||||
ba.open_url(
|
||||
'mailto:support@froemling.net'
|
||||
f'?subject={ba.internal.appnameupper()} Player Report: '
|
||||
+ self._account_id
|
||||
+ '&body='
|
||||
+ parse.quote(body)
|
||||
)
|
||||
self.close()
|
||||
|
||||
def close(self) -> None:
|
||||
"""Close the window."""
|
||||
ba.containerwidget(edit=self._root_widget, transition='out_scale')
|
||||
Loading…
Add table
Add a link
Reference in a new issue