Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Wklejka 20apsbaldn6s8 dodana przez Jadek, 16.02.2013 20:32
Typ:



rate poprawa by Jadek
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
#include <amxmodx> 
#include <fakemeta>
#include <hamsandwich>
#include <colorchat>
 
new SprawdzPcvar, MaxInterpPcvar
 
new const NazwyCvarow[][] = { "cl_updaterate", "cl_cmdrate", "rate" }
new const WartosciCvarow[sizeof(NazwyCvarow)] = { 101, 101, 25000 }
 
new Trie:IndexZmiennej
new bool:SprawdzCzas[33]
 
public plugin_init() {
    register_plugin("Sprawdzanie Ratow", "3.5", "naXe/Exolent")
    RegisterHam(Ham_Spawn, "player", "Odrodzenie", 1)
 
    IndexZmiennej = TrieCreate()
 
    for(new i = 0; i < sizeof(NazwyCvarow); i++) TrieSetCell(IndexZmiennej, NazwyCvarow[i], i)
 
    SprawdzPcvar =    register_cvar("sr_sprawdz", "1")
    MaxInterpPcvar = register_cvar("sr_maxinterp", "0.01")
} 
 
public plugin_end() TrieDestroy(IndexZmiennej)
 
public client_authorized(id) {
    if(SprawdzanieRatow_SprawdzGracza(id) == 0) return PLUGIN_HANDLED
 
    for(new i = 0; i < sizeof(NazwyCvarow); i++) client_cmd(id, "%s %d", NazwyCvarow[i], WartosciCvarow[i])
 
    SprawdzCzas[id] = false
 
    set_task(1.0, "SprawdzRaty", id)
    return PLUGIN_CONTINUE
}
 
public Odrodzenie(id) {
    SprawdzCzas[id] = true
 
    new gID = register_forward(FM_CmdStart, "CmdStart", 1)
    set_task(0.01, "WylaczForward", gID)
}
 
public WylaczForward(gID) unregister_forward(FM_CmdStart, gID, 1)
 
public CmdStart(id, uc_handle, seed) {
    if(SprawdzCzas[id]) {
        new Wartosc = get_uc(uc_handle, UC_LerpMsec)
 
        if(float(Wartosc) / 1000.0 > get_pcvar_float(MaxInterpPcvar) + 0.005) {            
            client_cmd(id, "ex_interp %0.2f", get_pcvar_float(MaxInterpPcvar))    
 
        }
        SprawdzCzas[id] = false
    }
}
 
public client_disconnect(id) remove_task(id)
public SprawdzRaty(id) query_client_cvar(id, NazwyCvarow[0], "SprawdzRaty_Funkcja")
 
public SprawdzRaty_Funkcja(id, const NazwaCvara[], const WartoscCvara[]) { 
    if(SprawdzanieRatow_SprawdzGracza(id) == 0 || SprawdzanieRatow_PoprawnaLiczba(WartoscCvara) == 0) return PLUGIN_HANDLED
 
    new cvar; TrieGetCell(IndexZmiennej, NazwaCvara, cvar)
 
    new DozwolonaWartosc = WartosciCvarow[cvar]
 
    if(str_to_num(NazwaCvara) < DozwolonaWartosc) {
 
 
        for(new i = 0; i < sizeof(NazwyCvarow); i++) client_cmd(id, "%s %d", NazwyCvarow[i], WartosciCvarow[i])
    }
    query_client_cvar(id, NazwyCvarow[(cvar + 1) % sizeof(NazwyCvarow)], "SprawdzRaty_Funkcja")
    return PLUGIN_CONTINUE 
}
 
public SprawdzanieRatow_PoprawnaLiczba(const numstr[]) {
    new Liczba; Liczba = str_to_num(numstr)
 
    if(Liczba == 0)
        if(!numstr[0]) return 0
 
    return 1
} 
 
public SprawdzanieRatow_SprawdzGracza(id) {
    if(get_pcvar_num(SprawdzPcvar) == 0 || is_user_bot(id) || is_user_hltv(id)) return 0
 
    return 1
}  

Dodanych wklejek: 4031
Powered By (Pav32) Pastebin © 2011