Sqower 1 Napisano 9 Listopada 2019 Klasa posiada stałe 1hp oraz 1/1 z prawego posiada 2 skoki i mniejszą grawitacje Klasa na flage "p" Spoiler /* Plugin Template generated by Pawn Studio */ #include <sourcemod> #include <CodD0_engine> #include <CodD0/skills/CodD0_skill_visibility> #include <CodD0/skills/CodD0_skill_damage> #include <CodD0/skills/CodD0_skill_gravity> #include <CodD0/skills/CodD0_skill_noFallDamage> #include <CodD0/skills/CodD0_skill_multiJump> public Plugin myinfo = { name = "CodD0 Class: [P] Ghost", author = "d0naciak", description = "[P] Ghost", version = "1.0", url = "d0naciak.pl" } int g_classID; bool g_hasClass[MAXPLAYERS + 1]; public void OnPluginStart() { g_classID = CodD0_RegisterClass("[P] Ghost", "Całkowicie niewidzialny na nożu, 1/1 z Kosy PPM", {0, -99, 0, 100}, { CSWeapon_KNIFE }, 1); } public void OnPluginEnd() { CodD0_UnregisterClass(g_classID); } public Action CodD0_ClassChanged(int client, int classID) { if(g_classID == classID) { CodD0_SetClientChanceToKillByKnife(client, CodD0_SkillSlot_Class, 1, true); if(!CheckCommandAccess(client, "sm_klasa_Ghost", ADMFLAG_CUSTOM2)) { PrintToChat(client, " \x06\x04[COD:MW]\x01 Aby skorzystać z tej klasy, użyj komendy \x05!sklepsms"); return Plugin_Handled; } } else if (g_hasClass[client]) { CodD0_SetClientVisibility(client, CodD0_SkillSlot_Class, 255); CodD0_SetClientVisibilityOnKnife(client, CodD0_SkillSlot_Class, 255); CodD0_SetClientMultiJumps(client, CodD0_SkillSlot_Class, 0); CodD0_SetClientGravity(client, CodD0_SkillSlot_Class, 0.0); CodD0_SetClientNoFallDamage(client, CodD0_SkillSlot_Class, false); g_hasClass[client] = false; } return Plugin_Continue; } public void CodD0_ClassChanged_Post(int client, int classID) { if(g_classID == classID) { CodD0_SetClientVisibility(client, CodD0_SkillSlot_Class, 5); CodD0_SetClientMultiJumps(client, CodD0_SkillSlot_Class, 2); CodD0_SetClientGravity(client, CodD0_SkillSlot_Class, 0.6); CodD0_SetClientNoFallDamage(client, CodD0_SkillSlot_Class, true); g_hasClass[client] = true; CodD0_SetClientChanceToKillByKnife(client, CodD0_SkillSlot_Class, 1, true); CreateTimer(0.5, CheckHealth, client, TIMER_FLAG_NO_MAPCHANGE); } } public Action CheckHealth(Handle timer, any client) { if(g_hasClass[client]) { if(IsPlayerAlive(client)) { if(GetClientHealth(client) > 1) SetEntityHealth(client, 1); } CreateTimer(0.5, CheckHealth, client, TIMER_FLAG_NO_MAPCHANGE); } } Podziękowania dla @Yamakashi Pod tego codmoda Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach