←  Pluginy

AMXX.pl: Support AMX Mod X i SourceMod

»

Edycja Pluginu
Przeróbka pluginu licznik fragów

  • +
  • -
Aureliusz - zdjęcie Aureliusz 02.06.2016

Witam proszę o przerobienie tego pluginu tak aby statystyki resetowały się dopiero po zmianie mapy ,a teraz resetują się po zginięciu :)

#include <amxmodx>
#include <fun>
 
new KILL[33],HS[33];
new SyncHudObj;
 
public plugin_init()
{
register_plugin("Licznik Fragow", "1.0", "[H]ARDBO[T]");
register_event("DeathMsg", "eDeath", "a");
SyncHudObj = CreateHudSyncObj();
}
public eDeath() 
{
new headshot,attacker=read_data(1);
new victim=read_data(2);
headshot=read_data(3);
 
KILL[attacker]++;
if(headshot) HS[attacker]++;
 
KILL[victim]=0;
HS[victim]=0;
 
return PLUGIN_CONTINUE;
}
public client_authorized(id) set_task(1.0,"ShowHud",id,_,_,"b");
public ShowHud(id)
{
set_hudmessage(52, 114, 53, 0.01, 0.89, 0, 1.0, 2.0, 0.1, 0.2, 1);
ShowSyncHudMsg(id, SyncHudObj,"Fragi:[%i]^nHS:[%i]^nRekord:[%i|%i]",KILL[id],HS[id],KILL[id],HS[id]);
}

Załączone pliki

Odpowiedz

  • +
  • -
Master Yoga - zdjęcie Master Yoga 02.06.2016

 

Witam proszę o przerobienie tego pluginu tak aby statystyki resetowały się dopiero po zmianie mapy ,a teraz resetują się po zginięciu :)

[spoiler]
#include <amxmodx>
#include <fun>
 
new KILL[33],HS[33];
new SyncHudObj;
 
public plugin_init()
{
register_plugin("Licznik Fragow", "1.0", "[H]ARDBO[T]");
register_event("DeathMsg", "eDeath", "a");
SyncHudObj = CreateHudSyncObj();
}
public eDeath() 
{
new headshot,attacker=read_data(1);
new victim=read_data(2);
headshot=read_data(3);
 
KILL[attacker]++;
if(headshot) HS[attacker]++;
 
KILL[victim]=0;
HS[victim]=0;
 
return PLUGIN_CONTINUE;
}
public client_authorized(id) set_task(1.0,"ShowHud",id,_,_,"b");
public ShowHud(id)
{
set_hudmessage(52, 114, 53, 0.01, 0.89, 0, 1.0, 2.0, 0.1, 0.2, 1);
ShowSyncHudMsg(id, SyncHudObj,"Fragi:[%i]^nHS:[%i]^nRekord:[%i|%i]",KILL[id],HS[id],KILL[id],HS[id]);
}[/spoiler]

 

Skoro statystyki się resetują to zapewne w którymś miejscu zostaje przypisana im wartość neutralna. Wyszukaj linie w pliku gdzie zmienne = 0.

Następnie, aby gracze nie posiadali statystyk innych graczy. Musisz wyzerowywać je w momencie gdy klient rozłącza się z serwerem.

W skrócie:

public client_disconnect(id)
{

KILL[id] = 0;
HS[id] = 0;

}
Odpowiedz

  • +
  • -
Aureliusz - zdjęcie Aureliusz 02.06.2016

Ha ha ha kompletnie nie wiem co do mnie mówisz max moich możliwości to wrzucenie gotowego pluginu na serwer więc jeżeli byś mógł to poproszę już o poprawiony kod :)

Odpowiedz

  • +
  • -
vanillah - zdjęcie vanillah 02.06.2016

#include <amxmodx>
#include <fun>
 
new KILL[33],HS[33];
new SyncHudObj;
 
public plugin_init()
{
register_plugin("Licznik Fragow", "1.0", "[H]ARDBO[T]");
register_event("DeathMsg", "eDeath", "a");
SyncHudObj = CreateHudSyncObj();
}
public eDeath() 
{
new headshot,attacker=read_data(1);
new victim=read_data(2);
headshot=read_data(3);
 
KILL[attacker]++;
if(headshot) HS[attacker]++;
 
KILL[victim]=0;
HS[victim]=0;
 
return PLUGIN_CONTINUE;
}
public client_authorized(id) set_task(1.0,"ShowHud",id,_,_,"b");

public client_disconnect(id){
KILL[id] = 0;
HS[id] = 0;
}
public ShowHud(id)
{
set_hudmessage(52, 114, 53, 0.01, 0.89, 0, 1.0, 2.0, 0.1, 0.2, 1);
ShowSyncHudMsg(id, SyncHudObj,"Fragi:[%i]^nHS:[%i]^nRekord:[%i|%i]",KILL[id],HS[id],KILL[id],HS[id]);
}

credits to master yoga

Odpowiedz

  • +
  • -
Aureliusz - zdjęcie Aureliusz 02.06.2016

dalej się zeruje po zginięciu :(

 

Odpowiedz

  • +
  • -
Master Yoga - zdjęcie Master Yoga 02.06.2016

Napisałem byś znalazł linie gdzie zmienne są zerowane ale widzę ze nie napisał Ci abyś je usunął.
Czyli Kills[victim] = 0 i HS[victim] = 0 do wywalenia.
Odpowiedz

  • +
  • -
vanillah - zdjęcie vanillah 02.06.2016

#include <amxmodx>
#include <fun>
 
new KILL[33],HS[33];
new SyncHudObj;
 
public plugin_init()
{
register_plugin("Licznik Fragow", "1.0", "[H]ARDBO[T]");
register_event("DeathMsg", "eDeath", "a");
SyncHudObj = CreateHudSyncObj();
}
public eDeath() 
{
new headshot,attacker=read_data(1);
new victim=read_data(2);
headshot=read_data(3);
 
KILL[attacker]++;
if(headshot) HS[attacker]++;
 
return PLUGIN_CONTINUE;
}
public client_authorized(id) set_task(1.0,"ShowHud",id,_,_,"b");

public client_disconnect(id){
KILL[id] = 0;
HS[id] = 0;
}
public ShowHud(id)
{
set_hudmessage(52, 114, 53, 0.01, 0.89, 0, 1.0, 2.0, 0.1, 0.2, 1);
ShowSyncHudMsg(id, SyncHudObj,"Fragi:[%i]^nHS:[%i]^nRekord:[%i|%i]",KILL[id],HS[id],KILL[id],HS[id]);
}

racja, tak to powinno wyglądać

Odpowiedz

  • +
  • -
Aureliusz - zdjęcie Aureliusz 03.06.2016

Dzięki działa :)

Odpowiedz

  • +
  • -
karoles357 - zdjęcie karoles357 04.06.2016

A da się tak przerobić aby plugin zapisywał zabójstwa ale tak na zawsze czyli np.Gracz ma 5 fragów po zmianie mapy lub wyjściu i wejściu dalej miał te 5 fragów

Odpowiedz

  • +
  • -
Yellon - zdjęcie Yellon 05.06.2016

Łap z zapisem :)

Załączone pliki

  • Załączony plik  fragi.sma   1,88 KB   51 Ilość pobrań
Odpowiedz