-
Postów
210 -
Dołączył
-
Ostatnia wizyta
-
Wygrane w rankingu
22
Ostatnia wygrana Linux` w dniu 23 Października 2017
Użytkownicy przyznają Linux` punkty reputacji!
Informacje o mnie
-
Płeć
Mężczyzna
Kontakt
- Steam:
-
Gadu-Gadu:
0
Ostatnie wizyty
4874 wyświetleń profilu
Osiągnięcia Linux`
-
O ile dobrze pamietam musisz w public canuse odblokowac mozliwosc posiadania alternatywnej broni przypisanej pod usp w silniku csgo. hkp2000 > usp m4a1 > m4a1s p228 > cz75a i tak dalej. Ta gra zawiera bardzo duzo bledow, cod byl pisany tez dosc dawno i nie byl juz rozwijany od tamtego momentu dlatego zawiera duzo niedogodnosci. Moge jedynie polecic ci przejscie na nowego cod moda.
- 2 odpowiedzi
-
- bronie
- niedzialajace
-
(i 4 więcej)
Oznaczone tagami:
-
> #include <sourcemod> #include <sdktools> #include <codmod> new const String:nazwa[] = "Buty Szturmowego"; new const String:opis[] = "Nie slychac twoich krokow"; new bool:ma_item[65]; public Plugin:myinfo = { name = nazwa, author = "Linux`", description = "Cod Item", version = "1.0", url = "http://steamcommunity.com/id/linux2006" }; public OnPluginStart() { cod_register_item(nazwa, opis, 0, 0); AddNormalSoundHook(DzwiekiGracza); } public OnClientPutInServer(client) { if(!IsFakeClient(client)) SendConVarValue(client, FindConVar("sv_footsteps"), "0"); } public cod_item_enabled(client) { ma_item[client] = true; } public cod_item_disabled(client) { ma_item[client] = false; } public Action:DzwiekiGracza(clients[64], &numclients, String:sample[PLATFORM_MAX_PATH], &entity, &channel, &Float:volume, &level, &pitch, &flags) { if(!IsValidClient(entity) || IsFakeClient(entity)) return Plugin_Continue; if((StrContains(sample, "physics") != -1 || StrContains(sample, "footsteps") != -1) && StrContains(sample, "suit") == -1) { if(!ma_item[entity]) EmitSoundToAll(sample, entity); return Plugin_Handled; } return Plugin_Continue; } Na zyczenie dodaje poprawiona wersje do tematu.
-
Nie dziala poniewaz nie podlaczyles zapewne zapisu :). Z darmowych rowniez polece ci wersje plx\a ale gdybys chcial cos calkiem gotowego to tylko nowy cod (czyt sygnature).
-
Pamietam, ze ktoras z bezsensownych aktualizacji popsula classname noza zmieniajac go w zaleznosci od rodzaju. Musisz rozszerzyc dostepna ilosc broni (noza) o nowe classname.
-
#include <sourcemod> #include <sdkhooks> #include <sdktools> #include <codmod> new String:nazwy_broni[][] = { "weapon_none", // 0 "weapon_negev", // 1 "weapon_m249", // 2 "weapon_awp", // 3 "weapon_scar20", // 4 "weapon_g3sg1", // 5 "weapon_aug", // 6 "weapon_sg556", // 7 "weapon_m4a1_silencer", // 8 "weapon_m4a1", // 9 "weapon_ak47", // 10 "weapon_ssg08", // 11 "weapon_famas", // 12 "weapon_galilar", // 13 "weapon_bizon", // 14 "weapon_p90", // 15 "weapon_ump45", // 16 "weapon_mp9", // 17 "weapon_mp7", // 18 "weapon_mac10", // 19 "weapon_sawedoff", // 20 "weapon_mag7", // 21 "weapon_xm1014", // 22 "weapon_nova", // 23 "weapon_fiveseven", // 24 "weapon_elite", // 25 "weapon_revolver", // 26 "weapon_deagle", // 27 "weapon_cz75a", // 28 "weapon_tec9", // 29 "weapon_p250", // 30 "weapon_hkp2000", // 31 "weapon_usp_silencer", // 32 "weapon_glock", // 33 "weapon_knife", // 34 "weapon_taser", // 35 "weapon_decoy", // 36 "weapon_hegrenade", // 37 "weapon_incgrenade", // 38 "weapon_molotov", // 39 "weapon_flashbang", // 40 "weapon_smokegrenade", // 41 "weapon_c4" // 42 }; new naboje_broni[][] = { {0, 0}, // 0 {150, 200}, // 1 {100, 200}, // 2 {10, 30}, // 3 {20, 90}, // 4 {20, 90}, // 5 {30, 90}, // 6 {30, 90}, // 7 {20, 40}, // 8 {30, 90}, // 9 {30, 90}, // 10 {10, 90}, // 11 {25, 90}, // 12 {35, 90}, // 13 {64, 120}, // 14 {50, 100}, // 15 {25, 100}, // 16 {30, 120}, // 17 {30, 120}, // 18 {30, 100}, // 19 {7, 32}, // 20 {5, 32}, // 21 {7, 32}, // 22 {8, 32}, // 23 {20, 100}, // 24 {30, 120}, // 25 {8, 8}, // 26 {7, 35}, // 27 {12, 12}, // 28 {32, 120}, // 29 {13, 26}, // 30 {13, 52}, // 31 {12, 24}, // 32 {20, 120}, // 33 {0, 0}, // 34 {-1, 1}, // 35 {-1, 1}, // 36 {-1, 1}, // 37 {-1, 1}, // 38 {-1, 1}, // 39 {-1, 2}, // 40 {-1, 1}, // 41 {-1, 1} // 42 }; new const String:frakcja[] = "Normalne"; new const String:nazwa[] = "Zwinne Palce"; new const String:opis[] = "Posiadasz natychmiastowe przeladowanie broni"; new bool:ma_item[65]; public Plugin:myinfo = { name = nazwa, author = "Linux`", description = "Cod Item", version = "1.0", url = "http://steamcommunity.com/id/linux2006" }; public OnPluginStart() { cod_register_item(frakcja, nazwa, opis, 0, 0); } public cod_item_enabled(client) { ma_item[client] = true; } public cod_item_disabled(client) { ma_item[client] = false; } public Action:OnPlayerRunCmd(client, &buttons, &impulse, Float:vel[3], Float:angles[3], &weapons) { if(!IsValidClient(client) || !ma_item[client]) return Plugin_Continue; if(!IsPlayerAlive(client)) return Plugin_Continue; new active_weapon = GetEntPropEnt(client, Prop_Send, "m_hActiveWeapon"); if(active_weapon != -1) { new naboje = GetEntData(active_weapon, FindSendPropInfo("CWeaponCSBase", "m_iClip1")); if((!naboje || buttons & IN_RELOAD) && !(buttons & IN_ATTACK)) { new String:weapon[32]; GetClientWeapon(client, weapon, sizeof(weapon)); new weaponid = GetUserWeaponId(weapon); if(weaponid && naboje < naboje_broni[weaponid][0] && naboje_broni[weaponid][1]) { new amunicja = GetEntProp(active_weapon, Prop_Send, "m_iPrimaryReserveAmmoCount"); if(amunicja) { SetEntData(active_weapon, FindSendPropInfo("CWeaponCSBase", "m_iClip1"), (naboje+amunicja < naboje_broni[weaponid][0])? naboje+amunicja: naboje_broni[weaponid][0]); SetEntProp(active_weapon, Prop_Send, "m_iPrimaryReserveAmmoCount", (amunicja-(naboje_broni[weaponid][0]-naboje) < 1)? 0: amunicja-(naboje_broni[weaponid][0]-naboje)); } } } } return Plugin_Continue; } public GetUserWeaponId(String:weapon[]) { for(new i = 1; i < sizeof(nazwy_broni); i ++) { if(StrEqual(weapon, nazwy_broni[i])) return i; } return -1; }
- 6 odpowiedzi
-
- 1
-
- NOWY]
- Natychmiastowe
-
(i 2 więcej)
Oznaczone tagami:
-
Czego nie rozumiesz? Wyciagasz funkcje z pluginu i wrzucasz do np perku, odpowiednio argumentujac. Kod na rozbrajanie public OnPluginStart() { HookEvent("bomb_begindefuse", BombBeginDefuse); HookEvent("bomb_abortdefuse", BombAbortDefuse); } public Action:BombBeginDefuse(Handle:event, const String:name[], bool:dontBroadcast) { new client = GetClientOfUserId(GetEventInt(event, "userid")); if(!IsValidClient(client)) return Plugin_Continue; CreateTimer(0.1, C4Timer, client); return Plugin_Continue; } public Action:BombAbortDefuse(Handle:event, const String:name[], bool:dontBroadcast) { new client = GetClientOfUserId(GetEventInt(event, "userid")); if(!IsValidClient(client)) return Plugin_Continue; SetEntProp(client, Prop_Send, "m_iProgressBarDuration", 0); return Plugin_Continue; } public Action:C4Timer(Handle:timer, any:client) { if(!IsValidClient(client)) return Plugin_Continue; new ent = FindEntityByClassname(-1, "planted_c4"); if(ent != -1) { SetEntPropFloat(ent, Prop_Send, "m_flDefuseCountDown", GetGameTime()+1.0); SetEntProp(client, Prop_Send, "m_iProgressBarDuration", 1); } return Plugin_Continue; }
-
Dlaczego chcesz czyscic bronie co 5 sekund? Jezeli planujesz zabierac je jednorazowo to lepiej wywolywac to przy spawnie, nowej rundzie itp. Natomiast jezeli chcesz po prostu zablokowac calkowicie posiadanie tych broni, lepiej bedzie wowczas wychwycic moment stworzenia bytu. #include <sourcemod> #include <sdkhooks> #include <sdktools> public OnPluginStart() { } public OnEntityCreated(entity, const String:classname[]) { if(entity > MaxClients && IsValidEntity(entity)) { if(StrContains(classname, "weapon_knife", false) == -1 && !StrEqual(classname, "weapon_hegrenade") && StrContains(classname, "weapon_", false) != -1) SDKHook(entity, SDKHook_Spawn, OnEntitySpawned); } } public Action:OnEntitySpawned(entity) { AcceptEntityInput(entity, "kill"); }
-
A to nie tak, ze teraz wystarczy tylko zmieniac czas u siebie na komputerze by miec uprawnienia na zawsze? :P. Jesli juz to zapis tylko mysql. @ Widze to tak, tworzysz zapis i dodajesz rekord do bazy z data przy pierwszym logowaniu gracza na serwer. Potem porownujesz czy od tej daty minely 2 dni, jesli nie, to ustawiasz uprawnienia przy podlaczeniu.
-
new ent = -1; for(new slot = 0; slot < 2; slot ++) { ent = GetPlayerWeaponSlot(client, slot); if(ent != -1) { RemovePlayerItem(client, ent); RemoveEdict(ent); } } ?
-
Problem pojawil sie po kolejnej z dupiatych aktualizacji gry. Zamien if(StrContains(sample, "physics") != -1 || StrContains(sample, "footsteps") != -1) na if((StrContains(sample, "physics") != -1 || StrContains(sample, "footsteps") != -1) && StrContains(sample, "suit") == -1)
-
Ktos ma za ciebie wszystko wykonac a ty chcialbys tylko odcinac kupony? Rownie dobrze mozna samemu sobie zainwestowac w hostingi i domene, potem z nikim nie trzeba sie dzielic i byc na czyjejs lasce. Predzej taka osoba znalazla by sponsora ktory zakupi potrzebne uslugi i otrzyma te maksymalnie 50% zyskow bez jakich kolwiek praw administratora. Twoja oferta jest kompletnie nie logiczna.
-
Z jakimis podstawowymi problemami pewnie sie upora ale po cos wiecej polecalbym jednak pisac do kogos z doswiadczeniem. @Wilku90 mozesz napisac do mnie na steam.
-
+ bardzo dobra jakosc + bardzo dobra cena + dobrze sprawny support - slaba reklama, mala ilosc klientow co przeklada sie na ryzyko ogloszenia upadlosci - brak testowych serwerow - brak publikacji dem, chyba ze na wlasna reke np przez skrypt zamieszczony na innym serwerze www - bardzo amatorski panel hostingu