GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => A témát indította: MichaelTMorales - 2014. Október 23. - 20:46:12

Cím: GodMode
Írta: MichaelTMorales - 2014. Október 23. - 20:46:12
Sziasztok. Rengeteg helyen láttam hogy a god scripteket vagy timerrel vagy 99999999999999hp-val csinálják, ezért csináltam egy másik megoldást ami talán egyszerűbb, de hatásosabb lesz.
Készítő:MichaelTMorales
Sorok:28
Készítési idő:1-2 perc
 
#include <a_samp>
new God[MAX_PLAYERS];
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp(cmdtext, \"/god\", true))
{
if(God[playerid] == 0) {
God[playerid] = 1;
SendClientMessage(playerid, -1, \"God mód bekapcsolva\");
return 1;
}
if(God[playerid] == 1) {
God[playerid] = 0;
SendClientMessage(playerid, -1, \"God mód kikapcsolva!\");
return 1;
}
return 1;
}
return 0;
}
public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart)
{
if(God[playerid] == 1) return SetPlayerHealth(playerid, 100);
return 1;
}
Cím: GodMode
Írta: Flash - 2014. Október 23. - 21:07:10
Timerrel takarékosabb szerintem.
Vagy még annyit írj bele, hogy akkor állítsa át a játékos életét 100-ra, ha az nem egyenlő 100.-al.
+ itt van egy kicsit rövidebben a /god parancs ZCMD-vel:
 
CMD:god(playerid) {
God[playerid] = !God[playerid];
SendClientMessage(playerid, -1, !God[playerid]?(\"God mód kikapcsolva!\"):(\"God mód bekapcsolva!\"));
return 1;
}
Cím: GodMode
Írta: Csabesz - 2014. Október 23. - 21:28:46
Tesztelted Minigunnal, robbanáskor, lezuhanáskor?
Cím: GodMode
Írta: Lofoli - 2014. Október 23. - 21:35:55
Nem akarok Tapló lenni de szerintem ez felesleges !
Már bocsi ... De a forumon van vagy 100 Halhatatlansági Parancs :()
Kezdő vagy értem nekem se ment jobban :P
De valakinek tuti jól fog jönni mint a többi 100 God parancs!
Ha megbántottalak akkor Sajnálom nem állt szándékomba !!
Cím: GodMode
Írta: blackdog476 - 2014. Október 23. - 22:04:40
Idézetet írta: Lofoli date=1414092955\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"51108\" data-ipsquote-contentclass=\"forums_Topic
Nem akarok Tapló lenni de szerintem ez felesleges !
Már bocsi ... De a forumon van vagy 100 Halhatatlansági Parancs :()
Kezdő vagy értem nekem se ment jobban :P
De valakinek tuti jól fog jönni mint a többi 100 God parancs!
Ha megbántottalak akkor Sajnálom nem állt szándékomba !!
 
Igen. 100 \"god\" parancs, ami azt csinálja, hogy beállítja a játékos életét 99999-re.
Cím: GodMode
Írta: BackUP - 2014. Október 23. - 22:26:18
Idézetet írta: Nukerdog date=1414094680\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"51108\" data-ipsquote-contentclass=\"forums_Topic


Nem akarok Tapló lenni de szerintem ez felesleges !
Már bocsi ... De a forumon van vagy 100 Halhatatlansági Parancs :()
Kezdő vagy értem nekem se ment jobban :P
De valakinek tuti jól fog jönni mint a többi 100 God parancs!
Ha megbántottalak akkor Sajnálom nem állt szándékomba !!
 
Igen. 100 \"god\" parancs, ami azt csinálja, hogy beállítja a játékos életét 99999-re.
 
[/quote]
Ez pedig csak a lövésektől véd meg, robbanástól és zuhanástól nem. :)
Cím: GodMode
Írta: Dfoglalo - 2014. Október 23. - 22:36:44
[gmod]Bővítsd a szabályzatnak megfelelően! 24 ó.[/gmod]
Cím: GodMode
Írta: krisk - 2014. Október 24. - 21:30:39
Segítek:
 

#define INFINITY (Float:0x7F800000)
stock GodMode(playerid)
{
    return SetPlayerHealth(playerid,INFINITY);
}

 
A scripted eleve rossz, mert ha olyan damage-t kapsz, amely 100-nál nagyobb, akkor hiába adod neki vissza az életét, meg fog halni.
Cím: GodMode
Írta: krisk - 2014. Október 24. - 22:34:46
Mégegy megoldás:
 

public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart)
{
    if(God[playerid] == 1)
        return 0;
    else
        return 1;
}

 
Ez hasonlít ahhoz, amit az eredeti script írója akart elérni.
Cím: GodMode
Írta: blackdog476 - 2014. Október 25. - 00:15:25
Idézetet írta: krisk date=1414179039\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"51108\" data-ipsquote-contentclass=\"forums_Topic
Segítek:
 

#define INFINITY (Float:0x7F800000)
stock GodMode(playerid)
{
    return SetPlayerHealth(playerid,INFINITY);
}

 
A scripted eleve rossz, mert ha olyan damage-t kapsz, amely 100-nál nagyobb, akkor hiába adod neki vissza az életét, meg fog halni.
 
Perfekt. Honnan van az érték? :D
Cím: GodMode
Írta: krisk - 2014. Október 25. - 20:24:42
Szabvány IEEE 754 (lebegőpontos) érték a végtelenre.
Cím: GodMode
Írta: PeterBlue - 2014. Október 28. - 21:29:34
OnPlayerTakeDamage-et használj szerintem, és az élet több legyen mint 100, pl. 1000 vagy 10000 ;)
Cím: GodMode
Írta: blackdog476 - 2014. Október 28. - 21:31:08
Idézetet írta: PeterBlue date=1414528174\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"51108\" data-ipsquote-contentclass=\"forums_Topic
OnPlayerTakeDamage-et használj szerintem, és az élet több legyen mint 100, pl. 1000 vagy 10000 ;)
 
Felesleges
 

 

#define INFINITY (Float:0x7F800000)
stock GodMode(playerid)
{
    return SetPlayerHealth(playerid,INFINITY);
}

 

[/quote]
Ezzel le van minden tudva. :D