Skip to content

Commit a196f57

Browse files
Merge pull request #355 from shobhit-pathak/dev
0.8.15
2 parents ad749fa + 22bc126 commit a196f57

File tree

5 files changed

+40
-28
lines changed

5 files changed

+40
-28
lines changed

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# MatchZy Changelog
22

3+
# 0.8.15
4+
5+
#### October 26, 2025
6+
7+
- Fixed the /noclip command without any permissions.
8+
- Updated pt-BR translation.
9+
- Fixed database schema creation error with MySQL.
10+
311
# 0.8.14
412

513
#### October 21, 2025

ConsoleCommands.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -717,6 +717,10 @@ public void OnVersionCommand(CCSPlayerController? player, CommandInfo? command)
717717
public HookResult OnConsoleNoClip(CCSPlayerController? player, CommandInfo cmd) {
718718
if (player == null || !player.PawnIsAlive || player.Team == CsTeam.Spectator || player.Team == CsTeam.None)
719719
return HookResult.Stop;
720+
if (cmd.CallingContext != CommandCallingContext.Console) {
721+
return HookResult.Stop; // abort when called in chat.
722+
// inefficient but CS# forces both...
723+
}
720724

721725
// inspired by cs2-noclip
722726
if (player.PlayerPawn.Value!.MoveType == MoveType_t.MOVETYPE_NOCLIP) {

DatabaseStats.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -224,8 +224,8 @@ name VARCHAR(255) NOT NULL,
224224
cash_earned INT NOT NULL,
225225
enemies_flashed INT NOT NULL,
226226
PRIMARY KEY (matchid, mapnumber, steamid64),
227-
FOREIGN KEY (matchid) REFERENCES matchzy_stats_matches (matchid),
228-
FOREIGN KEY (mapnumber) REFERENCES matchzy_stats_maps (mapnumber)
227+
CONSTRAINT fk_player_map_ref FOREIGN KEY (matchid, mapnumber)
228+
REFERENCES matchzy_stats_maps (matchid, mapnumber)
229229
)");
230230
}
231231

MatchZy.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public partial class MatchZy : BasePlugin
1414

1515
public override string ModuleName => "MatchZy";
1616

17-
public override string ModuleVersion => "0.8.14";
17+
public override string ModuleVersion => "0.8.15";
1818

1919
public override string ModuleAuthor => "WD- (https://github.com/shobhit-pathak/)";
2020

lang/pt-BR.json

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,41 @@
11
{
22
"matchzy.ready.markedready": "Você foi marcado como {green}READY{default}.",
33
"matchzy.ready.markedunready": "Você foi marcado como {darkred}NOTREADY{default}.",
4-
"matchzy.ready.readytotestorebackupinfomessage": "Unready players: {0}. Please type .ready when you are ready to restore the match backup. {1}",
4+
"matchzy.ready.readytotestorebackupinfomessage": "Jogadores {darkred}NOTREADY: {0}{default}. Digite {green}.ready {default}quando estiver pronto para restaurar o backup da partida. {1}",
55

6-
"matchzy.knife.sidedecisionpending": "{green}{0}{default} ganhou a rodada faca. Aguardando eles digitarem {green}.stay{default} ou {green}.switch{default}.",
7-
"matchzy.knife.decidedtostay": "{green}{0}{default} decidiu permanecer no mesmo time.",
6+
"matchzy.knife.sidedecisionpending": "{green}{0}{default} ganharam ROUND FACA. Aguardando eles digitarem {green}.stay{default} para ficar ou {green}.switch{default} para trocar de time.",
7+
"matchzy.knife.decidedtostay": "{green}{0}{default} decidiu ficar no mesmo time.",
88
"matchzy.knife.decidedtoswitch": "{green}{0}{default} decidiu trocar de time.",
99

1010
"matchzy.pause.pausedthematch": "{green}{0}{default} pausou o jogo. Digite {green}.unpause {default}para despausar o jogo.",
11-
"matchzy.pause.teamsunpausedthematch": "Ambas as equipes despausaram, jogo retomado!",
12-
"matchzy.pause.teamwantstounpause": "{green}{0}{default} quer despausar o jogo. {green}{1}{default}, por favor, escreva {green}!unpause {default} para confirmar.",
11+
"matchzy.pause.teamsunpausedthematch": "Ambos os times despausaram, jogo retomado!",
12+
"matchzy.pause.teamwantstounpause": "{green}{0}{default} quer despausar o jogo. {green}{1}{default}, por favor, escreva {green}.unpause {default} para confirmar.",
1313
"matchzy.pause.adminpausedthematch": "{darkred}Admin{default} pausou o jogo!",
1414
"matchzy.pause.adminunpausedthematch": "{darkred}Admin{default} despausou, jogo retomado!",
15-
"matchzy.pause.onlyadmincanunpause": "O jogo foi pausado por um administrador, portanto, só pode ser despausado por um administrador.",
16-
"matchzy.pause.pausedbecauserestore": "O jogo foi pausado devido à Restauração de Rodada. Ambas as equipes precisam digitar {green}.unpause{default} para despausar o jogo.",
17-
"matchzy.pause.techpausenotenabled": "Pausas técnicas não estão habilitadas.",
18-
"matchzy.pause.notechpauseleft": "{green}{0}{default} não tem mais pausas técnicas!",
15+
"matchzy.pause.onlyadmincanunpause": "Jogo foi pausado por um administrador, portanto, só pode ser despausado por um administrador.",
16+
"matchzy.pause.pausedbecauserestore": "Jogo foi pausado devido à Restauração do Round. Ambos os times precisam digitar {green}.unpause{default} para despausar o jogo.",
17+
"matchzy.pause.techpausenotenabled": "Pauses Técnicos não estão habilitados.",
18+
"matchzy.pause.notechpauseleft": "{green}{0}{default} não tem mais pauses técnicos!",
1919
"matchzy.pause.ispaused": "O jogo já está pausado!",
2020
"matchzy.pause.duringhalftime": "Você não pode usar este comando durante o intervalo.",
2121
"matchzy.pause.matchended": "Você não pode usar este comando depois que o jogo terminou.",
2222
"matchzy.pause.tacticaltimeout": "Você não pode usar este comando quando o tempo técnico está ativo.",
2323

24-
"matchzy.restore.teamwantstorestore": "{green}{0}{default} quer restaurar o jogo para o início da rodada atual. {green}{1}{default}, por favor, escreva {green}!stop{default} para confirmar.",
24+
"matchzy.restore.teamwantstorestore": "{green}{0}{default} quer restaurar o jogo para o início do round atual. {green}{1}{default}, por favor, escreva {green}.stop{default} para confirmar.",
2525
"matchzy.restore.loadedsuccessfully": "Backup file loaded successfully: {0}",
2626
"matchzy.restore.restoredsuccessfully": "Arquivo de backup restaurado com sucesso: {0}",
2727
"matchzy.restore.stopcommandrequiresnodamage": "A request to restart the round cannot be given once a player has damaged any opposing player.",
2828

2929
"matchzy.backup.stopduringhalftime": "Você não pode usar este comando durante o intervalo.",
3030
"matchzy.backup.stopmatchended": "Você não pode usar este comando depois que o jogo terminou.",
3131
"matchzy.backup.stoptacticaltimeout": "Você não pode usar este comando quando o tempo técnico está ativo.",
32-
"matchzy.backup.restoreinvalidvalue": "Valor inválido para o comando de restauração. Por favor, especifique um número válido não negativo. Use: {green}!restore <rodada>{default}",
32+
"matchzy.backup.restoreinvalidvalue": "Valor inválido para o comando de restauração. Por favor, especifique um número válido não negativo. Use: {green}!restore <round>{default}",
3333
"matchzy.backup.restoreduringhalftime": "Você não pode carregar um backup durante o intervalo.",
3434
"matchzy.backup.restorematchended": "Você não pode usar este comando depois que o jogo terminou.",
3535
"matchzy.backup.restoretacticaltimeout": "Você não pode usar este comando quando o tempo técnico está ativo.",
3636
"matchzy.backup.restoredoesntexist": "O arquivo de backup {0} não existe, por favor, certifique-se de estar restaurando um backup válido.",
3737

38-
"matchzy.cvars.invalidvalue": "Valor inválido para matchzy_chat_messages_timer_delay. Por favor, especifique um número válido não negativo.",
38+
"matchzy.cvars.invalidvalue": "Valor inválido para {darkred}matchzy_chat_messages_timer_delay{default}. Por favor, especifique um número válido não negativo.",
3939

4040
"matchzy.cc.enabled": "{green}Habilitado{default}",
4141
"matchzy.cc.disabled": "{darkred}Desabilitado{default}",
@@ -47,7 +47,7 @@
4747
"matchzy.cc.rcon": "Comando enviado com sucesso!",
4848
"matchzy.cc.exitprac": "MatchZy já está no modo de jogo!",
4949
"matchzy.cc.match": "MatchZy já está no modo de jogo!",
50-
"matchzy.cc.startisprac": "Não é possível iniciar uma partida enquanto estiver no modo de prática. Por favor, o comando .exitprac para sair do modo de prática primeiro!",
50+
"matchzy.cc.startisprac": "Não é possível iniciar uma partida enquanto estiver no modo de prática. Por favor, o comando !exitprac para sair do modo de prática primeiro!",
5151
"matchzy.cc.startmatchstarted": "O comando de início não pode ser usado se o jogo já tiver começado! Se você quiser despausar, por favor, use .unpause",
5252
"matchzy.cc.gamestarted": "{darkred}Admin{default} iniciou o jogo!",
5353
"matchzy.cc.rrispracc": "O modo de prática está ativo, não é possível reiniciar o jogo.",
@@ -56,11 +56,11 @@
5656
"matchzy.cc.currentsettings": "Configurações Atuais:",
5757
"matchzy.cc.knifestatus": "Rodada Faca: {green}{0}{default}",
5858
"matchzy.cc.minreadyplayersperteam": "Número Mínimo de Jogadores Prontos (Por Equipe): {green}{0}{default}",
59-
"matchzy.cc.minreadyspecs": "Número Mínimo de Espectadores Prontos: {green}{0}{default}",
60-
"matchzy.cc.minreadyplayers": "Número Mínimo de Prontos Necessários: {green}{0}{default}",
59+
"matchzy.cc.minreadyspecs": "Número Mínimo de Spectadores Prontos: {green}{0}{default}",
60+
"matchzy.cc.minreadyplayers": "Número Mínimo de Jogadores Prontos: {green}{0}{default}",
6161
"matchzy.cc.playoutstatus": "Playout: {green}{0}{default}",
6262
"matchzy.cc.minreadyrequired": "Prontos Necessários Atuais: {0}. Use: !readyrequired <número_de_jogadores_prontos_necessários>",
63-
"matchzy.cc.roundknife": "A rodada faca agora é {green}{0}{default}!",
63+
"matchzy.cc.roundknife": "Round Faca agora é {green}{0}{default}!",
6464
"matchzy.cc.skipvetomatchstarted": "O comando de pular veto não pode ser usado se o jogo já tiver começado!",
6565
"matchzy.cc.skipveto": "A fase de veto foi cancelada!",
6666
"matchzy.cc.matchpaused": "O jogo já está pausado, não é possível iniciar um tempo técnico!",
@@ -72,16 +72,16 @@
7272
"matchzy.mm.get5matchisalreadysetup": "[LoadMatchDataCommand] Já há uma partida configurada com o ID: {0}, não é possível carregar uma nova partida!",
7373
"matchzy.mm.invalidurl": "[LoadMatchDataCommand] URL inválida: {green}{0}{default}. Por favor, forneça uma URL válida para carregar a partida!",
7474
"matchzy.mm.httprequestfailed": "[LoadMatchFromURL] Falha na requisição HTTP com o código de status: {0}",
75-
"matchzy.mm.teamcannotbechanged": "Os nomes das equipes não podem ser alterados após o início da partida!",
75+
"matchzy.mm.teamcannotbechanged": "Os nomes dos times não podem ser alterados após o início da partida!",
7676

7777
"matchzy.pm.movedtospawn": "Movido para o spawn: {0}",
7878
"matchzy.pm.negativenumber": "Valor inválido para o comando {command}. Por favor, especifique um número válido não negativo. Use: !{command} <número>",
79-
"matchzy.pm.lineupissaved": "Lineup já existe! Por favor, use um nome diferente ou use .delnade <nade>",
79+
"matchzy.pm.lineupissaved": "Lineup já existe! Por favor, use um nome diferente ou use !delnade <nade>",
8080
"matchzy.pm.lineupsavedsucces": "Lineup {green}{0}{default} salvo com sucesso!",
8181
"matchzy.pm.playersavedlineup": "{lightblue}{0}{default} acabou de salvar um lineup! Código do Lineup: {green}{1}{default}",
8282
"matchzy.pm.lineupdeletesuccess": "Lineup {green}{0}{default} deletado com sucesso.",
8383
"matchzy.pm.lineupnotfound": "Lineup {green}{0}{default} não encontrado!",
84-
"matchzy.pm.lineupalreadyexists": "Lineup {green}{0}{default} já existe! Por favor, use um nome diferente ou use .delnade <nade>",
84+
"matchzy.pm.lineupalreadyexists": "Lineup {green}{0}{default} já existe! Por favor, use um nome diferente ou use !delnade <nade>",
8585
"matchzy.pm.lineupimportedsuccess": "Lineup {green}{0}{default} importado e salvo com sucesso.",
8686
"matchzy.pm.lineupinvalidcode": "Formato de código inválido. Por favor, forneça um código válido com nome, pos e ang.",
8787
"matchzy.pm.nosavedlineups": "Nenhum lineup salvo encontrado para o SteamID especificado: {0}",
@@ -93,7 +93,7 @@
9393
"matchzy.pm.dryrunmatchstarted": "Dryrun não pode ser iniciado quando uma partida já foi iniciada!",
9494
"matchzy.pm.dryrunnopractice": "Dryrun só pode ser iniciado no modo de prática!",
9595
"matchzy.pm.botlimit": "Não é possível adicionar bots, o time está cheio! Use .nobots para remover os bots atuais.",
96-
"matchzy.pm.spectatorbroken": "Alternar para um time a partir do espectador está atualmente quebrado, use o menu de equipe.",
96+
"matchzy.pm.spectatorbroken": "Alternar para um time a partir do spectador está atualmente quebrado, use o menu de equipe.",
9797
"matchzy.pm.nothrownnades": "Você ainda não lançou nenhuma nade!",
9898
"matchzy.pm.grenadehistory": "Seu histórico de nades vai de 1 a {0}!",
9999
"matchzy.pm.nothrownnadestype": "Você ainda não lançou nenhum {green}{0}{default} ainda!",
@@ -111,14 +111,14 @@
111111
"matchzy.pm.savepos": "Posição salva",
112112
"matchzy.pm.loadpos": "Posição carregada",
113113
"matchzy.pm.notsavedpos": "Você ainda não salvou uma posição!",
114-
115-
"matchzy.rs.minreadyplayers": "Você deve ter pelo menos {green}{0}{default} jogador(es) no servidor para ficar pronto.",
116-
"matchzy.rs.forcereadiedby": "Sua equipe foi forçada a ficar pronta por {green}{0}{default}",
114+
115+
"matchzy.rs.minreadyplayers": "Você deve ter pelo menos {green}{0}{default} jogadores no servidor para ficar ready.",
116+
"matchzy.rs.forcereadiedby": "Seu time foi forçado a ficar READY por {green}{0}{default}",
117117

118118
"matchzy.sleep.sleepwhenmatchstared": "O Modo Sleep não pode ser iniciado quando uma partida já foi iniciada!",
119119

120-
"matchzy.utility.unreadyplayers": "Jogadores não prontos: {0}. Por favor, digite .ready para ficar pronto! {1}",
121-
"matchzy.utility.readyplayers": "Jogadores prontos atuais: {green}{0}{default}",
120+
"matchzy.utility.unreadyplayers": "Jogadores {darkred}NOTREADY: {0}. {default}Por favor, digite {green}.ready {default}para ficar pronto! {1}",
121+
"matchzy.utility.readyplayers": "Jogadores {green}READY: {0}{default}",
122122
"matchzy.utility.minimumreadyplayers": "Número mínimo de jogadores prontos necessário {green}{0}{default}, jogadores prontos atuais: {green}{1}{default}",
123123
"matchzy.utility.matchstarted": "O mapa não pode ser alterado após o início da partida!",
124124
"matchzy.utility.minreadyplayers": "O número mínimo de jogadores prontos necessários para iniciar a partida agora está definido para: {0}",

0 commit comments

Comments
 (0)