Skip to content

Commit 5df0a97

Browse files
committed
chore(docker): set default amx gamemode as an empty one
1 parent 5636b1a commit 5df0a97

File tree

5 files changed

+214
-2
lines changed

5 files changed

+214
-2
lines changed

docker/scripts/check_server_config.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@
1313
continue
1414
line = line.rstrip(' \r\n')
1515
k,v = line.split(' ', 1)
16+
17+
if k == 'gamemode0' and v != 'empty 1':
18+
v = 'empty 1'
19+
1620
if k == 'plugins' and 'PySAMP.so' not in v:
1721
added_plugins = True
1822
v += 'PySAMP.so'

docker/scripts/empty.amx

1.31 KB
Binary file not shown.

docker/scripts/empty.pwn

Lines changed: 201 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,201 @@
1+
// This is a comment
2+
// uncomment the line below if you want to write a filterscript
3+
//#define FILTERSCRIPT
4+
5+
#include <a_samp>
6+
7+
8+
9+
main()
10+
{
11+
}
12+
13+
public OnGameModeInit()
14+
{
15+
return 1;
16+
}
17+
18+
public OnGameModeExit()
19+
{
20+
return 1;
21+
}
22+
23+
public OnPlayerRequestClass(playerid, classid)
24+
{
25+
return 1;
26+
}
27+
28+
public OnPlayerConnect(playerid)
29+
{
30+
return 1;
31+
}
32+
33+
public OnPlayerDisconnect(playerid, reason)
34+
{
35+
return 1;
36+
}
37+
38+
public OnPlayerSpawn(playerid)
39+
{
40+
return 1;
41+
}
42+
43+
public OnPlayerDeath(playerid, killerid, reason)
44+
{
45+
return 1;
46+
}
47+
48+
public OnVehicleSpawn(vehicleid)
49+
{
50+
return 1;
51+
}
52+
53+
public OnVehicleDeath(vehicleid, killerid)
54+
{
55+
return 1;
56+
}
57+
58+
public OnPlayerText(playerid, text[])
59+
{
60+
return 1;
61+
}
62+
63+
public OnPlayerCommandText(playerid, cmdtext[])
64+
{
65+
return 0;
66+
}
67+
68+
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
69+
{
70+
return 1;
71+
}
72+
73+
public OnPlayerExitVehicle(playerid, vehicleid)
74+
{
75+
return 1;
76+
}
77+
78+
public OnPlayerStateChange(playerid, newstate, oldstate)
79+
{
80+
return 1;
81+
}
82+
83+
public OnPlayerEnterCheckpoint(playerid)
84+
{
85+
return 1;
86+
}
87+
88+
public OnPlayerLeaveCheckpoint(playerid)
89+
{
90+
return 1;
91+
}
92+
93+
public OnPlayerEnterRaceCheckpoint(playerid)
94+
{
95+
return 1;
96+
}
97+
98+
public OnPlayerLeaveRaceCheckpoint(playerid)
99+
{
100+
return 1;
101+
}
102+
103+
public OnRconCommand(cmd[])
104+
{
105+
return 1;
106+
}
107+
108+
public OnPlayerRequestSpawn(playerid)
109+
{
110+
return 1;
111+
}
112+
113+
public OnObjectMoved(objectid)
114+
{
115+
return 1;
116+
}
117+
118+
public OnPlayerObjectMoved(playerid, objectid)
119+
{
120+
return 1;
121+
}
122+
123+
public OnPlayerPickUpPickup(playerid, pickupid)
124+
{
125+
return 1;
126+
}
127+
128+
public OnVehicleMod(playerid, vehicleid, componentid)
129+
{
130+
return 1;
131+
}
132+
133+
public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
134+
{
135+
return 1;
136+
}
137+
138+
public OnVehicleRespray(playerid, vehicleid, color1, color2)
139+
{
140+
return 1;
141+
}
142+
143+
public OnPlayerSelectedMenuRow(playerid, row)
144+
{
145+
return 1;
146+
}
147+
148+
public OnPlayerExitedMenu(playerid)
149+
{
150+
return 1;
151+
}
152+
153+
public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
154+
{
155+
return 1;
156+
}
157+
158+
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
159+
{
160+
return 1;
161+
}
162+
163+
public OnRconLoginAttempt(ip[], password[], success)
164+
{
165+
return 1;
166+
}
167+
168+
public OnPlayerUpdate(playerid)
169+
{
170+
return 1;
171+
}
172+
173+
public OnPlayerStreamIn(playerid, forplayerid)
174+
{
175+
return 1;
176+
}
177+
178+
public OnPlayerStreamOut(playerid, forplayerid)
179+
{
180+
return 1;
181+
}
182+
183+
public OnVehicleStreamIn(vehicleid, forplayerid)
184+
{
185+
return 1;
186+
}
187+
188+
public OnVehicleStreamOut(vehicleid, forplayerid)
189+
{
190+
return 1;
191+
}
192+
193+
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
194+
{
195+
return 1;
196+
}
197+
198+
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
199+
{
200+
return 1;
201+
}

docker/server.sh

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,11 @@ if [[ ! -d ../server ]]; then
1414
cd ../docker
1515
fi
1616

17+
# add empty gamemode if it doesn't exist
18+
if [[ ! -f ../server/gamemodes/empty.amx ]]; then
19+
cp ./scripts/empty.amx ../server/gamemodes/
20+
fi
21+
1722
# create plugins folder
1823
if [[ ! -d ../server/plugins ]]; then
1924
mkdir ../server/plugins
@@ -33,7 +38,8 @@ cp scripts/start_server.sh ../server
3338
chmod +x ../server/start_server.sh
3439

3540
# add plugin to server config and set password if it's still changeme
36-
python scripts/check_server_config.py ../server/
41+
python3 scripts/check_server_config.py ../server/
42+
3743

3844
docker build -f ./server.Dockerfile -t pysamp/server --build-arg BASE=ubuntu:bionic ../
39-
docker run --name pysamp_server -v "$(cd ../ && pwd)"/server:/server -p 7777:7777 -p 7777:7777/udp --rm -it pysamp/server
45+
docker run --name pysamp_server -v "$(cd ../ && pwd)"/server:/server -p 7777:7777 -p 7777:7777/udp --rm -it pysamp/server

gamemodes/empty/gamemode.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ def OnGameModeExit():
88
return True
99

1010
def OnPlayerConnect(playerid):
11+
SendClientMessage(playerid, 0xFF000000, "Hello %s from Python" % GetPlayerName(playerid, 32))
1112
return True
1213

1314
def OnPlayerDisconnect(playerid, reason):

0 commit comments

Comments
 (0)