[Include] rf_Damage - Um dos includes de danos mais realistas
#1

Rodney Francalim

Includes
••••••••••••••••••••••••••••••••••••••••••••••••••

1: LOG
Code:
[v0.2 - 11/02/2015]:
- Adicionado GetPlayerArmourEx(playerid, &Float:armour);
- Adicionado GetPlayerHealthEx(playerid, &Float:health);
- Agora o jogador fica "bкbado" quando toma um headshot;
- Nome, saъde e colete removidos da cabeзa do jogador;
- O DEBUG foi removido;
[v0.1 - 10/02/2015]:
- Primeiro release;
(http://pastebin.com/JMNGX7gB)
2: Descriзгo
- Agora o dano й baseado na parte do corpo e na distвncia entre os 2 jogadores. Se o jogador tomar dano no tronco, and ele usa um colete, ele perde colete, mas se o dano for em alguma outra parte do corpo, entгo ele perde somente a vida. As armas tкm uma distвncia mбxima que causa o dano "perfeito". Exemplo: o sniper rifle tem 6.0 de distвncia, atй aн o dano й somente 41.5. Depois disto, pra cada metro depois da distвncia mбxima, o dano cai 0.06. Sу й aplicado nas armas que usam balas.

3: O que nуs precisamos?
- Progress Bar v2

4: Funзхes
Code:
SetPlayerHealthEx(playerid, Float:health);
SetPlayerArmourEx(playerid, Float:armour);
GetPlayerHealthEx(playerid, &Float:health);
GetPlayerArmourEx(playerid, &Float:armour);
5: Imagens
[ame]http://www.youtube.com/watch?v=WcVKQb4bcXA[/ame]

6: Download


7: Consideraзхes finais
- Й meu primeiro Include que posto aqui, espero que seja ъtil.
- Sim, farei algumas mudanзas, porque eu usarei isso no meu projeto, o BRA.
- Nem preciso dizer, mas, se for usб-lo, mantenha os crйditos.
- POR FAVOR, REPORTE QUALQUER BUG!!!

8: Agradecimentos e crйditos
- [HLF]Southclaw for Progress Bar.

••••••••••••••••••••••••••••••••••••••••••••••••••
Reply
#2

Muito bom, Rodney.
Reply
#3

Use um hook nas funcoes

SetPlayerHealthEx(playerid, Float:health);
SetPlayerArmourEx(playerid, Float:armour);

fica mais pratico a usar.

Esta include tambйm da para fins de anti cheat de vida e colete, que acha colocar isso num futuro update?

@ OFF

xCR7

Que tal й usar a imagem que era do Larceny?
Cada vez vejo menos criatividade por estes lados, so plagio atras de plagio.
Reply
#4

Quote:
Originally Posted by PT
View Post
@ OFF

xCR7

Que tal й usar a imagem que era do Larceny?
Cada vez vejo menos criatividade por estes lados, so plagio atras de plagio.
Nгo vejo problema nenhum nisso, nгo estou fazendo nada ilegal.
Reply
#5

Quote:
Originally Posted by xCR7
View Post
Nгo vejo problema nenhum nisso, nгo estou fazendo nada ilegal.
Й uma questao de moral, parece que nao sabem fazer nada ate os avatares copiam.

Porem faзam o que quiserem, nao й por ter o avatar do cara que significa que sejam iguais a ele, nao pensem isso.

- Topico

Rodney vi la na board inglesa voce disse que nao sabe fazer hook porem posso te ajudar com isso se quiser, contudo nao entendi o problema do que voce falou no fim.
Reply
#6

Eu nгo fiz o GetPlayerHealthEx e GetPlayerArmourEx.

Vide que o life do jogador agora se baseia no progress bar.

O cara ia morrer de usar o GetPlayerHealth e nгo ia dar em nada.

@EDIT:
E sim, preciso de ajudar com hook, nгo faзo ideia de como funciona. ):
Reply
#7

Quote:
Originally Posted by PT
View Post
Й uma questao de moral, parece que nao sabem fazer nada ate os avatares copiam.

Porem faзam o que quiserem, nao й por ter o avatar do cara que significa que sejam iguais a ele, nao pensem isso.
Sim, amigo. Nгo estou fazendo nada pra copiar ninguйm e sim por que eu curti o avatar.
Reply
#8

Quote:
Originally Posted by Rodney Francalim
View Post
Eu nгo fiz o GetPlayerHealthEx e GetPlayerArmourEx.

Vide que o life do jogador agora se baseia no progress bar.

O cara ia morrer de usar o GetPlayerHealth e nгo ia dar em nada.

@EDIT:
E sim, preciso de ajudar com hook, nгo faзo ideia de como funciona. ):
Estarias a falar de algo assim:

PHP Code:
stock GetPlayerHealthEx(playerid)
    return 
GetPlayerProgressBarValue(playeridHealthBar[playerid]); 
?

quanto a o hook, tem este tuto na board inglesa, mas se quiser poderei ajudar-lo com isso:

https://sampforum.blast.hk/showthread.php?tid=441293



@ xCR7

Nao vale apena continuar, ja disse o que tinha a dizer nao continuarei a responder-lhe.
Reply
#9

Quote:
Originally Posted by PT
View Post
Estarias a falar de algo assim:

PHP Code:
stock GetPlayerHealthEx(playerid)
    return 
GetPlayerProgressBarValue(playeridHealthBar[playerid]); 
?

quanto a o hook, tem este tuto na board inglesa, mas se quiser poderei ajudar-lo com isso:

https://sampforum.blast.hk/showthread.php?tid=441293
Entгo o hook ficaria mais ou menos assim?

(agora fiquei interessado em manter o nome original da funзгo)
pawn Code:
rf_Damage_GetPlayerHealth(playerid, &Float:health)
{
    health = GetPlayerProgressBarValue(playerid, HealthBar[playerid]);
    return 1;
}
#if defined _ALS_GetPlayerHealth
    #undef GetPlayerHealth
#else
    #define _ALS_GetPlayerHealth
#endif
#define GetPlayerHealth rf_Damage_GetPlayerHealth
Reply
#10

Quote:
Originally Posted by Rodney Francalim
View Post
Entгo o hook ficaria mais ou menos assim?

(agora fiquei interessado em manter o nome original da funзгo)
pawn Code:
rf_Damage_GetPlayerHealth(playerid, &Float:health)
{
    health = GetPlayerProgressBarValue(playerid, HealthBar[playerid]);
    return 1;
}
#if defined _ALS_GetPlayerHealth
    #undef GetPlayerHealth
#else
    #define _ALS_GetPlayerHealth
#endif
#define GetPlayerHealth rf_Damage_GetPlayerHealth
Sim й isso.

PHP Code:
rf_Damage_GetPlayerHealth(playerid, &Float:health)
{
    return 
health GetPlayerProgressBarValue(playeridHealthBar[playerid]);

Coloque direto no return
Reply
#11

Quote:
Originally Posted by GXR
View Post
Caralho PT porque essas merdas? Na moral velho vai comer buceta tu fica querendo fazer flamewar toda hora e dб nessa merda acaba fudendo os tуpicos dos outros, porque tu nгo mandou PM? Quer se sentir machгo й? Nгo tem necessidade disso vei, falava com o nego por PM, agr tб querendo pegar de fodгo, olha essa juventude cara, que idade tu tem mesmo? 12 anos pqp vai brincar com barbies cara.
Acalma ai crianзa, nao precisa de andar com contas fake para insultar.

Alem do mais quando tenho algo a dizer nao o mando por ninguem.

cumps.
Reply
#12

@OFF
Nгo comecem a poluir o tуpico do cara, nй? Se comam via MP's, em vez de poluir o tуpico do cara.
@TOPIC

Ficou bom, parabйns.
+REP
Reply
#13

https://sampforum.blast.hk/showthread.php?tid=441293


Enfim, o sistema й meio simples e bem legal Para os RPG que estгo comeзando agora. Parabйns ^^
Reply
#14

Quote:
Originally Posted by GXR
View Post
Caralho PT porque essas merdas? Na moral velho vai comer buceta tu fica querendo fazer flamewar toda hora e dб nessa merda acaba fudendo os tуpicos dos outros, porque tu nгo mandou PM? Quer se sentir machгo й? Nгo tem necessidade disso vei, falava com o nego por PM, agr tб querendo pegar de fodгo, olha essa juventude cara, que idade tu tem mesmo? 12 anos pqp vai brincar com barbies cara.

@TOPIC

eu curti ai tб legal cara, eu irei utilizar no meu server
kkkk porque vocк nгo xinga com sua conta original ?, o cara tem tando medo do PT que xinga o PT com a conta fake. kkkkkk tem medo й ?, #MostraCara use sua conta verdadeira, ta mais do que na cara que vocк й conta fake.


@TOPIC

Parabйns pela include
Reply
#15

Atualizado pra versгo 0.2.

Code:
[v0.2 - 11/02/2015]:
- Adicionado GetPlayerArmourEx(playerid, &Float:armour);
- Adicionado GetPlayerHealthEx(playerid, &Float:health);
- Agora o jogador fica "bкbado" quando toma um headshot;
- Nome, saъde e colete removidos da cabeзa do jogador;
- O DEBUG foi removido;
Reply
#16

Tu usou o ProgressBar para que? Eu nгo verifiquei direito o code, sу o vнdeo..
Reply
#17

Como eu falei, o sistema ele й um dos mais prуximos da realidade que tem (atй porque tem poucos).

Um tiro no pй, por exemplo, nгo tiraria, nгo seria tгo grave, quanto um tiro no peito (se tiver sem colete).

Mas, no SA-MP, se eu tomar um tiro no pй й o mesmo dano que causaria se o tiro fosse no peito.

Se eu nгo usasse progress bar, mas sim a barra de HP original, o jogador acabaria morrendo, vide que eu nгo posso impedir que tal jogador receba uma certa quantidade de dano apenas setando o HP dele apуs o dano.

Entгo, se um jogador tivesse 10 de HP e tomasse um tiro no pй, o dano seria de 5, por exemplo, e no peito seria 20.

Mas, o cara vai acabar morrendo se ele tomar o tiro no pй, jб que o dano vai ser 20 de qualquer jeito.



Eu poderia simplesmente utilizar o OnPlayerWeaponShot e retornar 0, o que impediria o jogador de receber o dano, mas essa callback sу funciona se o lagcomp tiver ativado, o que nem todos os servidores fazem.

E eu queria abranger essa include em todos os servidores de RP/G. Mas eu jб tф tendo umas ideias de impedir o uso do ProgressBar utilizando o SetPlayerTeam que, aparentemente, impede que o jogador perca HP. Mas isso aн vai ficar pra prуxima atualizaзгo (amanhг).
Reply
#18

Acredite, vocк nгo vai conseguir usar essa funзгo.

Ao usar SetPlayerTeam, й impossнvel o uso do ChatKill pois o OnPlayerDeath й chamado como se vocк tivesse morrido por suicнdio, pois como vocк mesmo falou: a funзгo impede que o jogador perca HP.

Ou seja, й impossнvel de mata-lу. E quando vocк usa code pra isso para burlar, acontece o que eu relatei.
Reply
#19

Quote:
Originally Posted by JonathanFeitosa
View Post
Acredite, vocк nгo vai conseguir usar essa funзгo.

Ao usar SetPlayerTeam, й impossнvel o uso do ChatKill pois o OnPlayerDeath й chamado como se vocк tivesse morrido por suicнdio, pois como vocк mesmo falou: a funзгo impede que o jogador perca HP.

Ou seja, й impossнvel de mata-lу. E quando vocк usa code pra isso para burlar, acontece o que eu relatei.
Isso nгo seria tгo relevante pros servidores que nгo usam ChatKill... Mas como eu queria abranger isso a todos os servidores, entгo deu ruim...


Mas ainda assim vou tentar achar alguma forma de nгo usar o ProgressBar.
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)