[Arma] Magic Penetration 2015

Pluginuri facute de utilizatorii forumului eXtream.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Post Reply
User avatar
alkaline
Fost moderator
Fost moderator
Posts: 734
Joined: 18 Jul 2012, 09:42
Detinator Steam: Da
Reputatie: Fost Moderator ajutator
Nume anterior: lucylucy
Fond eXtream: 0
Location: Caras-Severin
Has thanked: 5 times
Been thanked: 296 times

21 Sep 2015, 16:26

Descriere :[/b] Este un plugin unic, care arunca cu o raza magica, pe care poate ridica inamicul pe sus, si il poate muta ori unde.
Pe langa asta, cand e in Idle, are niste benefici, pe care le poti activa atata timp, cat ti in mana MagicPenetration-ul.
Mai jos sunt niste poze.

Nu necesita nici un bind, pentru nici o tasta.

Pentru a testa, am lasat in sursa.

Nume: alkaline
Versiune: v1.0
Link oficial: http://www.extreamcs.com/forum/pluginur ... 01187.html



Descarcare
| Afiseaza codul
Poza descarcare :
Image

Sursa =>> magic_penetration.sma

Resursele =>> Resursele Magic Penetration



Instalare:
1. Fisierul magic_penetration.sma il puneti in addons/amxmodx/scripting
2. Fisierul magic_penetration.amxx il puneti in addons/amxmodx/plugins
3. Intrati in fisierul addons/amxmodx/configs/plugins.ini si adaugati la urma:
Code:
magic_penetration.amxx

Native

Code: Select all

get_magicpenetration( id );    /// Verifica daca ai arma
set_magicpenetration( id, true ); /// Ii da arma
set_magicpenetration( id, false ); /// I-o ia inapoi
Poze
| Afiseaza codul
1
Image
2
Image
RoyalServer
User avatar
HamletEagle
Fost moderator
Fost moderator
Posts: 750
Joined: 21 Sep 2013, 15:05
Detinator Steam: Da
CS Status: Inactiv cateva zile.
SteamID: privat
Reputatie: Fost Scripter eXtreamCS.com
Fost Moderator ajutator
Has thanked: 19 times
Been thanked: 85 times

21 Sep 2015, 16:58

Code: Select all

register_forward( FM_CmdStart, "MagicPenetrationStart" );
Sper ca stii ca CmdStart e acelasi lucru ca prethink(chemat de acelasi numar de ori - chemate din SV_Frame), nu e o metoda buna. Poti sa dai hook la WeaponIdle, il inregistrezi in Deploy si dai unregister in Holster. Asta o sa functioneze mai bine.

Esti serios ? PreThink pentru asa ceva?
1.Afisezi hudurile pentru 0.3 secunde dar PreThink le reafiseaza de x ori pe secunda, unde x = numarul de frameuri pe secunda(deci daca ai 100 fps de 100 de ori pe secunda). Poti sa faci un simplu task la 1.0 secunde si sa faci holdtime de la hud 1.1 secunde.
2.Nu are sens sa folosesti PreThink pentru viteza, da hook la ItemPreFrame.

Nu folosi CurWeapon pentru a schimba modelul unei arme, foloseste Item_Deploy. Jocul supra-scrie modelul doar in Deploy, deci are sens sa il aplici pe al tau tot atunci, fix dupa cel setat de joc. Nu are rost sa aplici modelul de fiecare data in CurWeapon(care e chemat in multe alte situatii).

Ai si alte optimizari pe care le poti face, daca esti dispus pot sa continui si sa iti explic.
Daca vreti ajutorul meu, nu dati bump la topic, fara intrebari de genu "cat mai dureaza/mai astept mult?".
User avatar
alkaline
Fost moderator
Fost moderator
Posts: 734
Joined: 18 Jul 2012, 09:42
Detinator Steam: Da
Reputatie: Fost Moderator ajutator
Nume anterior: lucylucy
Fond eXtream: 0
Location: Caras-Severin
Has thanked: 5 times
Been thanked: 296 times

21 Sep 2015, 17:09

Da, dar e mai bine cu CMDStart, isi da automat unregister fwd, Si am pus hudul, pentru ca daca schimbi alta arma dispare automat.. Am inclus viteza in PreThink ca sa fie cu hud-ul .. Dar din cate stiu eu, La Item_Deploy, are un bug. Mai de mult l-am aflat, am adaugat mai multe arme pe Pe server, si nu imi aparea modelul la ele .. De asta am folosit currentWeap, e mai simplu.. Si da imi poti explica, nu ma deranjeaza cu nimic :).
User avatar
HamletEagle
Fost moderator
Fost moderator
Posts: 750
Joined: 21 Sep 2013, 15:05
Detinator Steam: Da
CS Status: Inactiv cateva zile.
SteamID: privat
Reputatie: Fost Scripter eXtreamCS.com
Fost Moderator ajutator
Has thanked: 19 times
Been thanked: 85 times

21 Sep 2015, 18:13

Ok, hai sa le luam pe bucati, nu are rost sa faci schimbari pe care nu le intelegi.

FM_CmdStart e chemat in fiecare frame ca sa verifice daca o comanda a fost initiata. Nu stiu ce vrei sa zici cu "isi da automat unregister fwd". Fakemeta doar da hook unor functii din joc, nu face nimic mai mult, practic e un punct de acces pentru tine catre functia respectiva(in cazul asta se numeste pfnCmdStart). WeaponIdle e chemat cat timp arma e in idle state, fix momentul cand tu vrei sa verifici pentru butoane. Si vrei sa verifici doar cat timp are arma respectiva in mana, deci intervalul de timp dintre Deploy(arma apare in maini) si Holster(arma se intoarce in invetar si alta arma apare in mana). Poti sa faci ceva de genul:

Code: Select all

#include <amxmodx>
#include <hamsandwich>
#include <fakemeta>

new HamHook:HookCBaseEntity_KnifeIdle

public plugin_init()
{
	RegisterHam(Ham_Item_Deploy, "weapon_knife", "CBasePlayer_ItemDeploy", false)
	RegisterHam(Ham_Item_Holster, "weapon_knife", "CBasePlayer_ItemHolster", false) 
	HookCBaseEntity_KnifeIdle      = RegisterHam(Ham_Weapon_WeaponIdle, "weapon_knife", "CBaseEntity_KnifeIdle", true)
	DisableHamForward(HookCBaseEntity_KnifeIdle)//momentan nu ne trebuie
}

public CBasePlayer_ItemDeploy(Ent)
{
	//acum ne trebuie
	EnableHamForward(HookCBaseEntity_KnifeIdle)
}

public CBasePlayer_ItemHolster(Ent)
{
	//si acum nu ne mai trebuie :))
	DisableHamForward(HookCBaseEntity_KnifeIdle)
}

public CBaseEntity_KnifeIdle(Ent)
{
	new id = pev(Ent, pev_owner)
	//restul codului tau din CmdStart
}
Asa cum am zis si in cod, pui ce aveai in CmdStart in KnifeIdle. Eu am numit functiile CBase_ pentru ca astea sunt numele lor reale in joc, dar le poti denumi asa cum vrei tu.

Sa inteleg ca ingrijorarea ta legata de hud este ca nu se va updata imediat. La un task de 1.0 secunde nu se va simti o diferenta, crede-ma, PreThink e overkill pentru asa ceva. E ilogic sa il tot reafisezi de 100 de ori / secunda, spamezi clientul cu mesaje inutile.

Legat de Deploy, nu exista niciun bug, ceva ai facut gresit, poate nu ai pus clasa corecta a armei in RegisterHam sau ai dat hook ca pre nu ca post(0 in loc de 1 in RegisterHam). Ham da hook unor functii virtuale din mod, deci nu are ce bug sa fie. Daca metoda asta de setare modele functioneaza pentru CS va functiona si pentru pluginul tau. In Entities Resources Replacement folosesc Deploy si nu am nicio problema.

Eu zic ca e destul atat, daca mai ai intrebari te ascult. Daca nu, dupa ce schimbi chestiile astea continuam cu restul modificarilor.
Daca vreti ajutorul meu, nu dati bump la topic, fara intrebari de genu "cat mai dureaza/mai astept mult?".
User avatar
LondoN eXtream
Membru eXtream
Membru eXtream
Posts: 2755
Joined: 10 Oct 2014, 06:21
Detinator Steam: Da
SteamID: /id/london_extreamcs
Reputatie: Fost scripter eXtreamCS
Fost moderator ajutator
Membru Club eXtreamCS (6 luni)
Fond eXtream: 0
Location: Roman, Neamț
Has thanked: 3 times
Been thanked: 12 times

11 Jul 2018, 02:24

imi poate face cineva rost de sursa?
User avatar
-ToTo-
Membru, skill +2
Membru, skill +2
Posts: 501
Joined: 30 Jul 2016, 21:28
Detinator Steam: Da
CS Status: Muncă
SteamID: id/totooffices/
Fond eXtream: 0
Location: Botosani
Has thanked: 10 times
Been thanked: 5 times

11 Jul 2018, 16:33

LondoN eXtream wrote:imi poate face cineva rost de sursa?
O poți lua din această arhivă CSO Papin 2015
O am și eu pe server dacă vrei să o încerci :slightly_smiling_face:
Furien Remade Level || Class || Power || Quest || Event
IP : 188.212.100.219:27015

Post Reply

Return to “Pluginuri eXtream”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 11 guests