it is v1.0, not v0.94
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@1965 e016b1c5-ed68-44aa-a2f7-31cac88cffde
This commit is contained in:
@@ -69,7 +69,7 @@ mapmodel 0 0 0 0 "coffeemug" //53
|
||||
mapmodel 0 0 0 0 "flyer" //54
|
||||
mapmodel 0 0 1 0 "poster" //55 (Mind z-buffer issues on 16bit!)
|
||||
mapmodel 1 1 0 0 "aard" //56
|
||||
// Start of 0.94 mapmodels.
|
||||
// Start of 1.0 mapmodels.
|
||||
mapmodel 4 1 0 0 "bridge" //57
|
||||
mapmodel 0 1 0 0 "ladder_rung" //58
|
||||
mapmodel 0 0 0 0 "drainpipe" //59
|
||||
@@ -452,6 +452,6 @@ texture 0 "./makke/box_4.jpg"
|
||||
texture 0 "./makke/box_3.jpg" //241
|
||||
texture 0 "./makke/smallsteelbox.jpg
|
||||
|
||||
//------Start of 0.94 textures----------
|
||||
//------Start of 1.0 textures----------
|
||||
|
||||
|
||||
|
||||
+1
-1
@@ -55,7 +55,7 @@ menudirlist "demos/" "dmo" "demo $arg1"
|
||||
|
||||
newmenu about
|
||||
|
||||
menuitem "AssaultCube v0.94" ""
|
||||
menuitem "AssaultCube v1.0" ""
|
||||
menuitem ""
|
||||
menuitem " ...Help" "showmenu help"
|
||||
menuitem " ...Credits" "showmenu credits"
|
||||
|
||||
+1
-1
@@ -9,7 +9,7 @@
|
||||
<body>
|
||||
<h1>History</h1>
|
||||
|
||||
<h2>AssaultCube v0.94</h2>
|
||||
<h2>AssaultCube v1.0</h2>
|
||||
|
||||
<p>2007/06/04</p>
|
||||
|
||||
|
||||
+12
-42
@@ -7,7 +7,7 @@
|
||||
See reference.xsd and types.xsd before editing this file.
|
||||
-->
|
||||
|
||||
<cuberef name="AssaultCube Reference" version="v0.94" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://cubers.net/Schemas/CubeRef schemas/cuberef.xsd" xmlns="http://cubers.net/Schemas/CubeRef">
|
||||
<cuberef name="AssaultCube Reference" version="v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://cubers.net/Schemas/CubeRef schemas/cuberef.xsd" xmlns="http://cubers.net/Schemas/CubeRef">
|
||||
<description>
|
||||
This reference describes the commands and variables available in AssaultCube.
|
||||
</description>
|
||||
@@ -231,6 +231,14 @@
|
||||
<argument token="N" description="the index of the word"/>
|
||||
</arguments>
|
||||
</command>
|
||||
<command name="findlist">
|
||||
<description>Searches a list for a specified value.</description>
|
||||
<arguments>
|
||||
<argument token="L" description="the list"/>
|
||||
<argument token="I" description="the item to find"/>
|
||||
</arguments>
|
||||
<return token="I" description="the index of the item in the list"/>
|
||||
</command>
|
||||
<command name="sleep">
|
||||
<description>Executes a command after specified time period.</description>
|
||||
<examples>
|
||||
@@ -482,18 +490,6 @@
|
||||
<identifierReference identifier="sendmap"/>
|
||||
</references>
|
||||
</command>
|
||||
<command name="record">
|
||||
<description>Starts recording of a demo.</description>
|
||||
<remarks>
|
||||
<remark>
|
||||
This works for any multiplayer mode, including the default "ffa" mode you are in when
|
||||
you load up a map locally. The file is saved to demos/S.cdgz.
|
||||
</remark>
|
||||
</remarks>
|
||||
<arguments>
|
||||
<argument token="S" description="the demo name"/>
|
||||
</arguments>
|
||||
</command>
|
||||
<command name="spectate">
|
||||
<description>
|
||||
Toggle into spectator mode - only possible when you're dead!
|
||||
@@ -555,33 +551,6 @@
|
||||
</remarks>
|
||||
<value token="P" description="the playback speed" minValue="10" maxValue="1000" defaultValue="100"/>
|
||||
</variable>
|
||||
<variable name="demodelaymsec">
|
||||
<description>Changes the demo playback delay.</description>
|
||||
<remarks>
|
||||
<remark>
|
||||
Only touch if you know what you are doing:
|
||||
changes the delay in msec with which the demo is played back to allow for interpolation.
|
||||
Default is 100, if you decrease it you will most likely just get choppier (it will obstruct
|
||||
the spline interpolation) for an unnoticable bit less lag. Increase it if you notice choppyness
|
||||
in playback, should not be needed in general, but may help if you insist on playing back
|
||||
demos at very low demoplaybackspeed.
|
||||
</remark>
|
||||
</remarks>
|
||||
<value token="D" description="delay in milliseconds" minValue="0" maxValue="500" defaultValue="120"/>
|
||||
</variable>
|
||||
<variable name="demotracking">
|
||||
<description>Specifies if particles should be emitted on demo players position.</description>
|
||||
<remarks>
|
||||
<remark>
|
||||
When demotracking is on (B = 1), the camera will create a red particle every frame where it moves,
|
||||
creating a trail. This can be used to inspect someone's movement in a game.
|
||||
It will only show the last N particles according to the maxparticles variable,
|
||||
which you may want to increase to 10000. The particles will remain even after
|
||||
you stop the demo, so you can use edit mode to look at it from all angles.
|
||||
</remark>
|
||||
</remarks>
|
||||
<value token="B" description="sets the demo tracking state" minValue="0" maxValue="1" defaultValue="0" valueNotes="1 (on), 0 (off)"/>
|
||||
</variable>
|
||||
<variable name="gamespeed">
|
||||
<description>Sets the gamespeed in percent.</description>
|
||||
<remarks>
|
||||
@@ -954,8 +923,8 @@
|
||||
<argument token="N" description="the player to assign to a team" valueNotes="client number"/>
|
||||
</arguments>
|
||||
</command>
|
||||
<command name="givemaster">
|
||||
<description>Gives the master state to specified player.</description>
|
||||
<command name="giveadmin">
|
||||
<description>Gives the admin state to the specified player.</description>
|
||||
<remarks>
|
||||
<remark>
|
||||
Requires admin state. The admin will lose his admin state after successfully issuing this command.
|
||||
@@ -1521,6 +1490,7 @@
|
||||
<description>Sets the team display mode.</description>
|
||||
<remarks>
|
||||
<remark>
|
||||
In mode 0 team display is disabled
|
||||
In mode 1 players will be rendered with a colored vest to make the teams distinguishable.
|
||||
In mode 2 almost the whole suit of the players will be colored. These display modes are only
|
||||
applied in team gamemodes.
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<body>
|
||||
<div id="main">
|
||||
<div id="version">
|
||||
v0.94
|
||||
v1.0
|
||||
</div>
|
||||
<div id="title">
|
||||
<h1>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// *IMPORTANT NOTE FOR AC-MAPPERS*
|
||||
// *IMPORTANT NOTE FOR AC-MAPPERS*
|
||||
// BE SURE TO COPY THIS FILE AND MAKE IT YOUR MAP CONFIG
|
||||
// BEFORE(!!) YOU EDIT ANYTHING.
|
||||
// THEN START AC, GO EDIT-MODE,GO /NEWMAP
|
||||
@@ -400,7 +400,7 @@ texture 0 "./makke/box_4.jpg"
|
||||
texture 0 "./makke/box_3.jpg" //241
|
||||
texture 0 "./makke/smallsteelbox.jpg
|
||||
|
||||
//------Start of 0.94 textures----------
|
||||
//------Start of v1.0 textures----------
|
||||
|
||||
texture 0 "wotwot/urban/manhole1.jpg"
|
||||
texture 0 "wotwot/urban/grill2_s.jpg"
|
||||
|
||||
+240
-120
@@ -1,121 +1,241 @@
|
||||
|
||||
RandumIdiot's AssaultCube Maps
|
||||
|
||||
_________________________
|
||||
| |
|
||||
| Who Am I | Come to my site, full of guides, maps and
|
||||
| | other neat stuff for AssaultCube made by me.
|
||||
| ???? |
|
||||
| ?? ?? | http://www.ri-ac.co.nr/
|
||||
| ?? |
|
||||
| ?? | Enjoy!
|
||||
| ?? |
|
||||
| |
|
||||
| ?? |
|
||||
| ?? | Contact: [email protected]
|
||||
| |
|
||||
| The real question is, |
|
||||
| Who are you |
|
||||
_________________________
|
||||
|
||||
|
||||
Don't know how to open this map in AssaultCube?
|
||||
Friendly explanations @ http://www.ri-ac.co.nr/runmap
|
||||
|
||||
|
||||
Mapname: ac_toxic
|
||||
Version: 0.9
|
||||
Released: Tuesday, 25th December, 2007.
|
||||
|
||||
|
||||
Included files with this zip:
|
||||
1) ac_toxic.cgz
|
||||
2) ac_toxic.cfg
|
||||
3) readme_ri_toxic.txt
|
||||
|
||||
|
||||
ac_toxic is RandumIdiot's first good map ever. High quality, nice
|
||||
layout. It has been released on the 25th of December, as a Christmas
|
||||
present to the AssaultCube community.
|
||||
|
||||
ac_toxic started out as an idea to create a half indoor, half outdoor
|
||||
map for ac that contained high up mapmodel's that players could walk
|
||||
around on to spectate the game (this seemed especially useful, so that
|
||||
clan members could judge a players techniques and skills before
|
||||
allowing a player to join the clan). This map was planned to be called
|
||||
ri_spectate.
|
||||
|
||||
Some time later, and I discovered that, spectate mode in AssaultCube
|
||||
0.94 was going to become reality and that version 0.94 was not too far
|
||||
away from release. This meant that the idea was scrapped. The map lost
|
||||
all of its spectator geometry and the map continued under the new name
|
||||
'ri_new' while I decided upon a new name.
|
||||
|
||||
So, over the past few months, this map has transformed from a crappy
|
||||
"spectate" idea, into this high quality, nice layout, ri_toxic map :)
|
||||
|
||||
|
||||
...and then, makkE told me he likes this map and that it can be
|
||||
included in the offical AssaultCube 0.94 distribution. So, the map has
|
||||
been given a config file and has been changed slightly to be awesome :P
|
||||
|
||||
Expect this map to be improved upon later :D
|
||||
|
||||
|
||||
Enjoy!
|
||||
|
||||
|
||||
Want a story?
|
||||
_____________
|
||||
Once upon a time, there were people that wrecked havock and created a
|
||||
huge mess, destroying buildings, etc etc... they were known as RVSF
|
||||
... and of course there were the terrorists, known as CLA.
|
||||
|
||||
CLA found a nice, recently abandoned storage complex. Most of
|
||||
the stuff stored there had been removed.. and that's what made it so
|
||||
perfect... Perfect for what? Why dumping toxic waste of course!
|
||||
|
||||
CLA had only just started dumping waste (which they were making
|
||||
thousands of dollars off) when RVSF got jealous and deployed themselves
|
||||
into the abandoned complex to gain control of it and carry out CLA's
|
||||
plans for their own profit.
|
||||
|
||||
What followed that? Why, havock of course!
|
||||
|
||||
|
||||
_______________________________________________________________________
|
||||
LICENSE
|
||||
|
||||
My maps and website contents are FREEWARE; however they remain copyrights
|
||||
of RandumIdiot (any content or parts derived from other works remain
|
||||
rights of their respective owners). The authors (RandumIdiot and any
|
||||
other respective owners) keeps all rights to them.
|
||||
|
||||
You may redistribute the maps unmodified on any media; the only changes
|
||||
you may make to them is recompression in different formats. You may only
|
||||
use my maps in the original AssaultCube distributions (which can be found
|
||||
at http://assault.cubers.net) and you may only redistribute them with
|
||||
the intention of using them in the original AssaultCube distributions.
|
||||
|
||||
If you wish to modify or use my maps in any other way, you must gain
|
||||
explicit permission from me.
|
||||
This can be done by emailing me at: [email protected]
|
||||
If you gain permission, you MUST abide by the terms and conditions.
|
||||
|
||||
The contents of "http://www.ri-ac.co.nr" can be redistributed under the
|
||||
following conditions:
|
||||
a) You post a link back to the original location of the resource
|
||||
you copied.
|
||||
b) You state/recognise the original author(s).
|
||||
c) You do not mislead who the original author(s) were.
|
||||
|
||||
My maps and website contents are distributed in the hope that they will
|
||||
be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
|
||||
of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. You may use them
|
||||
so long as you do not blame the authors for any damages incurred.
|
||||
|
||||
The only way that the above license does not adhere, is if you gain
|
||||
explicit permission from the author(s).
|
||||
|
||||
If any of this license confuses you, email for clarification at:
|
||||
|
||||
|
||||
RandumIdiot's AssaultCube Maps
|
||||
|
||||
|
||||
|
||||
_________________________
|
||||
|
||||
| |
|
||||
|
||||
| Who Am I | Come to my site, full of guides, maps and
|
||||
|
||||
| | other neat stuff for AssaultCube made by me.
|
||||
|
||||
| ???? |
|
||||
|
||||
| ?? ?? | http://www.ri-ac.co.nr/
|
||||
|
||||
| ?? |
|
||||
|
||||
| ?? | Enjoy!
|
||||
|
||||
| ?? |
|
||||
|
||||
| |
|
||||
|
||||
| ?? |
|
||||
|
||||
| ?? | Contact: [email protected]
|
||||
|
||||
| |
|
||||
|
||||
| The real question is, |
|
||||
|
||||
| Who are you |
|
||||
|
||||
_________________________
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Don't know how to open this map in AssaultCube?
|
||||
|
||||
Friendly explanations @ http://www.ri-ac.co.nr/runmap
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Mapname: ac_toxic
|
||||
|
||||
Version: 0.9
|
||||
|
||||
Released: Tuesday, 25th December, 2007.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Included files with this zip:
|
||||
|
||||
1) ac_toxic.cgz
|
||||
|
||||
2) ac_toxic.cfg
|
||||
|
||||
3) readme_ri_toxic.txt
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
ac_toxic is RandumIdiot's first good map ever. High quality, nice
|
||||
|
||||
layout. It has been released on the 25th of December, as a Christmas
|
||||
|
||||
present to the AssaultCube community.
|
||||
|
||||
|
||||
|
||||
ac_toxic started out as an idea to create a half indoor, half outdoor
|
||||
|
||||
map for ac that contained high up mapmodel's that players could walk
|
||||
|
||||
around on to spectate the game (this seemed especially useful, so that
|
||||
|
||||
clan members could judge a players techniques and skills before
|
||||
|
||||
allowing a player to join the clan). This map was planned to be called
|
||||
|
||||
ri_spectate.
|
||||
|
||||
|
||||
|
||||
Some time later, and I discovered that, spectate mode in AssaultCube
|
||||
|
||||
1.0 was going to become reality and that version 1.0 was not too far
|
||||
|
||||
away from release. This meant that the idea was scrapped. The map lost
|
||||
|
||||
all of its spectator geometry and the map continued under the new name
|
||||
|
||||
'ri_new' while I decided upon a new name.
|
||||
|
||||
|
||||
|
||||
So, over the past few months, this map has transformed from a crappy
|
||||
|
||||
"spectate" idea, into this high quality, nice layout, ri_toxic map :)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
...and then, makkE told me he likes this map and that it can be
|
||||
|
||||
included in the offical AssaultCube 0.94 distribution. So, the map has
|
||||
|
||||
been given a config file and has been changed slightly to be awesome :P
|
||||
|
||||
|
||||
|
||||
Expect this map to be improved upon later :D
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Enjoy!
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Want a story?
|
||||
|
||||
_____________
|
||||
|
||||
Once upon a time, there were people that wrecked havock and created a
|
||||
|
||||
huge mess, destroying buildings, etc etc... they were known as RVSF
|
||||
|
||||
... and of course there were the terrorists, known as CLA.
|
||||
|
||||
|
||||
|
||||
CLA found a nice, recently abandoned storage complex. Most of
|
||||
|
||||
the stuff stored there had been removed.. and that's what made it so
|
||||
|
||||
perfect... Perfect for what? Why dumping toxic waste of course!
|
||||
|
||||
|
||||
|
||||
CLA had only just started dumping waste (which they were making
|
||||
|
||||
thousands of dollars off) when RVSF got jealous and deployed themselves
|
||||
|
||||
into the abandoned complex to gain control of it and carry out CLA's
|
||||
|
||||
plans for their own profit.
|
||||
|
||||
|
||||
|
||||
What followed that? Why, havock of course!
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
_______________________________________________________________________
|
||||
|
||||
LICENSE
|
||||
|
||||
|
||||
|
||||
My maps and website contents are FREEWARE; however they remain copyrights
|
||||
|
||||
of RandumIdiot (any content or parts derived from other works remain
|
||||
|
||||
rights of their respective owners). The authors (RandumIdiot and any
|
||||
|
||||
other respective owners) keeps all rights to them.
|
||||
|
||||
|
||||
|
||||
You may redistribute the maps unmodified on any media; the only changes
|
||||
|
||||
you may make to them is recompression in different formats. You may only
|
||||
|
||||
use my maps in the original AssaultCube distributions (which can be found
|
||||
|
||||
at http://assault.cubers.net) and you may only redistribute them with
|
||||
|
||||
the intention of using them in the original AssaultCube distributions.
|
||||
|
||||
|
||||
|
||||
If you wish to modify or use my maps in any other way, you must gain
|
||||
|
||||
explicit permission from me.
|
||||
|
||||
This can be done by emailing me at: [email protected]
|
||||
|
||||
If you gain permission, you MUST abide by the terms and conditions.
|
||||
|
||||
|
||||
|
||||
The contents of "http://www.ri-ac.co.nr" can be redistributed under the
|
||||
|
||||
following conditions:
|
||||
|
||||
a) You post a link back to the original location of the resource
|
||||
|
||||
you copied.
|
||||
|
||||
b) You state/recognise the original author(s).
|
||||
|
||||
c) You do not mislead who the original author(s) were.
|
||||
|
||||
|
||||
|
||||
My maps and website contents are distributed in the hope that they will
|
||||
|
||||
be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
|
||||
|
||||
of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. You may use them
|
||||
|
||||
so long as you do not blame the authors for any damages incurred.
|
||||
|
||||
|
||||
|
||||
The only way that the above license does not adhere, is if you gain
|
||||
|
||||
explicit permission from the author(s).
|
||||
|
||||
|
||||
|
||||
If any of this license confuses you, email for clarification at:
|
||||
|
||||
[email protected]
|
||||
@@ -1,7 +1,7 @@
|
||||
Add things that have changed since 0.93 in here, so that when release time comes around, it is much easier to
|
||||
record what has changed since it's already recorded here.
|
||||
|
||||
Things not to add: Bugs created in 0.94 (since they should get fixed during the development).
|
||||
Things not to add: Bugs created in 1.0 (since they should get fixed during the development).
|
||||
Documentation changes --> Releases are expected to always have new documentation.
|
||||
______________________________________________________________________________________________________________
|
||||
|
||||
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
v0.94
|
||||
v1.0
|
||||
|
||||
* new voting system (map, mode, kick, etc.) -- done (driAn)
|
||||
* _stable_ demo support (sauer backport) -- done (driAn)
|
||||
@@ -15,7 +15,7 @@ v0.94
|
||||
* new map sending system -- done (driAn) autogetmap & cfg sending
|
||||
* wallshot sound fx -- done (driAn)
|
||||
|
||||
v0.95
|
||||
v1.1
|
||||
|
||||
* better ranking system
|
||||
* advanced GUI (key binding, inv mouse)
|
||||
|
||||
@@ -165,7 +165,7 @@ entity *CACBot::SearchForEnts(bool bUseWPs, float flRange, float flMaxHeight)
|
||||
{
|
||||
// This entity doesn't have/need ammo
|
||||
// Score on type instead
|
||||
switch(e.type)
|
||||
//switch(e.type)
|
||||
{ // UNDONE
|
||||
}
|
||||
}
|
||||
|
||||
@@ -570,7 +570,7 @@ void startmap(const char *name) // called just after a map load
|
||||
showscores(false);
|
||||
intermission = false;
|
||||
minutesremaining = -1;
|
||||
if(*clientmap) conoutf("game mode is \"%s\"", modestr(gamemode, modeacronyms));
|
||||
if(*clientmap) conoutf("game mode is \"%s\"", modestr(gamemode, modeacronyms > 0));
|
||||
if(firstrun && name && name[0])
|
||||
{
|
||||
execfile("config/firstrun.cfg");
|
||||
@@ -673,7 +673,7 @@ char *votestring(int type, char *arg1, char *arg2)
|
||||
s_sprintf(out)(msg, atoi(arg1) == 0 ? "disable" : "enable");
|
||||
break;
|
||||
case SA_MAP:
|
||||
s_sprintf(out)(msg, arg1, modestr(atoi(arg2), modeacronyms));
|
||||
s_sprintf(out)(msg, arg1, modestr(atoi(arg2), modeacronyms > 0));
|
||||
break;
|
||||
default:
|
||||
s_sprintf(out)(msg, arg1, arg2);
|
||||
|
||||
+1
-1
@@ -47,7 +47,7 @@ extern int hwtexsize;
|
||||
|
||||
#include "protos.h" // external function decls
|
||||
|
||||
#define AC_VERSION 940
|
||||
#define AC_VERSION 1000
|
||||
#define AC_MASTER_URI "masterserver094.cubers.net/cgi-bin/actioncube.pl/" // FIXME, change DNS on ac release
|
||||
|
||||
#endif
|
||||
|
||||
@@ -137,7 +137,7 @@ void renderscores(void *menu, bool init)
|
||||
if(getclientmap()[0])
|
||||
{
|
||||
bool fldrprefix = !strncmp(getclientmap(), "maps/", strlen("maps/"));
|
||||
s_sprintf(modeline)("\"%s\" on map %s", modestr(gamemode, modeacronyms), fldrprefix ? getclientmap()+strlen("maps/") : getclientmap());
|
||||
s_sprintf(modeline)("\"%s\" on map %s", modestr(gamemode, modeacronyms > 0), fldrprefix ? getclientmap()+strlen("maps/") : getclientmap());
|
||||
}
|
||||
|
||||
extern int minutesremaining;
|
||||
|
||||
@@ -478,7 +478,7 @@ void refreshservers(void *menu, bool init)
|
||||
if(si.address.host != ENET_HOST_ANY && si.ping != 9999)
|
||||
{
|
||||
if(si.protocol!=PROTOCOL_VERSION) s_sprintf(si.full)("%s:%d [%s protocol]", si.name, si.port, si.protocol<PROTOCOL_VERSION ? "older" : "newer");
|
||||
else if(si.map[0]) s_sprintf(si.full)("%d\t%d/%d\t%s, %s: %s:%d %s", si.ping, si.numplayers, si.maxclients, si.map, modestr(si.mode, modeacronyms), si.name, si.port, si.sdesc);
|
||||
else if(si.map[0]) s_sprintf(si.full)("%d\t%d/%d\t%s, %s: %s:%d %s", si.ping, si.numplayers, si.maxclients, si.map, modestr(si.mode, modeacronyms > 0), si.name, si.port, si.sdesc);
|
||||
else s_sprintf(si.full)("%d\t%d/%d\tempty: %s:%d %s", si.ping, si.numplayers, si.maxclients, si.name, si.port, si.sdesc);
|
||||
}
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user