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: Amf - 2012. Június 07. - 13:03:02

Cím: Holttest Rendszer
Írta: Amf - 2012. Június 07. - 13:03:02

Üdv!
Írtam egy holtest rendszert,
ha meg hal valaki akkor egy object marad a helyén.
rCon Admin tudja azonosítani,
és kiírja, hogy ki az a holtest, és a gyilkost!
Csak természetes halálnál mûködik normálisan!
Ha paranccsal ölöd meg, akkor gyilkos nevet nem fog kiírni!
KATT
 
 


/* ==================== [ Holtest Rendszer ] ==================== */
/* ============================================================== */
/* ======================= [ Készítette ] ======================= */
/* ============================================================== */
/* =================== [ Amf | SampForum.hu ] =================== */
/* ============================================================== */
/* ================== [ !!! NE TÖRÖLD KI !!! ] ================== */
/* ============================================================== */
#include <a_samp>
#include <foreach>
#include <streamer>
#include <zcmd>
#define PIROS 0xFF0000AA
new Gyilkos[MAX_PLAYERS], Holtest[MAX_PLAYERS], Object[MAX_PLAYERS];
new Float:Yh[MAX_PLAYERS], Float:Xh[MAX_PLAYERS], Float:Zh[MAX_PLAYERS];
public OnPlayerDeath(playerid, killerid, reason)
{
DestroyDynamicObject(Object [playerid]);
GetPlayerPos(playerid, Yh[playerid], Xh[playerid], Zh[playerid]);
    Object[playerid] = CreateDynamicObject(3092, Yh[playerid], Xh[playerid], Zh[playerid], 0, 90, 274);
Gyilkos[playerid] = killerid;
Holtest[playerid] = playerid;
}
CMD:azonosit(playerid, params[]) //Csak természetes halálnál írja ki a gyilkost is!Ha parancsal ölöd meg, akkor nem!//
{
if(IsPlayerAdmin(playerid))
{
foreach (Player, i)
{
   if(IsPlayerInRangeOfPoint(playerid, 3, Yh, Xh, Zh))
   {
      new name[128];
      new name2[128];
      new string[100];
            GetPlayerName(Gyilkos, name, sizeof(name));
            GetPlayerName(Holtest, name2, sizeof(name2));
      format(string, sizeof(string),\"Holtest: %s Megölte: %s\",name2, name);
      SendClientMessage(playerid, PIROS, string);
      DestroyDynamicObject(Object [playerid]);
   }
   else
       {
      SendClientMessage(playerid, PIROS, \"Nincs a közeledben holtest!\");
   }
}
}
else
{
    SendClientMessage(playerid, PIROS, \"Nem vagy Admin!\");
}
return 1;
}
Cím: Holttest Rendszer
Írta: instant - 2012. Június 07. - 13:34:42
ilyen van asszem a seerpgbe is nem?
de azért szép
Cím: Holttest Rendszer
Írta: Amf - 2012. Június 07. - 13:36:15
Az egy dolog, hogy van a see-be! :D
Az nem azt jelenti, hogy onnan van!
Köszönöm!
Cím: Holttest Rendszer
Írta: Caesar - 2012. Június 07. - 14:01:40
Hello szép am ojat nem tudsz hogy egy rendör tudja csak megnézni hogy ki ölte meg vagy egy rendör skinnel lévö ember tudja megnézni :) ?
Cím: Holttest Rendszer
Írta: zeteni - 2012. Június 07. - 14:12:30
Holtest helyett Holttest! :) Egyébként szép kis code.
Cím: Holttest Rendszer
Írta: Amf - 2012. Június 07. - 14:54:44
Köszi!
Tegnap írtam este, és már fáradt voltam!
Ha megadod a változókat, átírom neked rendõrösre!
Cím: Holttest Rendszer
Írta: rhassi - 2012. Június 07. - 15:07:23
A gyilkosság nem éppen természetes halál.
Cím: Holttest Rendszer
Írta: Amf - 2012. Június 07. - 16:28:03
Az admin általitól természetesebb! :D
Cím: Holttest Rendszer
Írta: DetentioN - 2012. Június 07. - 17:21:31
Idézetet írta: zeteni date=1339071150\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"22501\" data-ipsquote-contentclass=\"forums_Topic
Holtest helyett Holttest! :) Egyébként szép kis code.
 
én elõbb azt olvastam róla hogy hottest xD


amúgy jó kis kód :)
Cím: Holttest Rendszer
Írta: norbee0170 - 2012. Június 07. - 20:25:18
jónak hangzik, csak tehetnél fel képet, mer már nincs gépemen SA és nemtom leszedni h megnézzem :D
de ez alapvetõ lenne h képet is mellékelj a \"munkád\" mellé
Cím: Holttest Rendszer
Írta: Szucsor - 2012. Június 15. - 12:25:15
Szép kis kód. Kér, hogy a SA:MP-ban nincsenek különbõzõ hulla objectek. Amúgy nagyon jó. Csak így tovább Respect!
Cím: Holttest Rendszer
Írta: Amf - 2012. Június 15. - 13:28:10
Köszönöm, próbálkozok! :D
Cím: Holttest Rendszer
Írta: Sramm - 2012. Június 15. - 14:16:41
Az ötlet jó, de a megvalósítás már kevésbé. Ez már ránézésre is bugos, nem fikázni akarlak, egész jó, de lehetne jobb is, illetve bugmentesebb is.
Íme az én verzióm, amiben javítom a hibáit és leegyszerûsítem a dolgokat.
 
/* ==================== [ Holttest Rendszer ] ==================== */
/* ============================================================== */
/* ======================= [ Készítette ] ======================= */
/* ============================================================== */
/* =================== [ Amf | SampForum.hu ] =================== */
/* ============================================================== */
/* ================== [ !!! NE TÖRÖLD KI !!! ] ================== */
/* ============================================================== */
#include <a_samp>
#include <streamer>
#include <zcmd>
#define PIROS 0xFF0000AA
#define MAX_HOLTTEST 50
new Gyilkos[MAX_HOLTTEST], holttest[MAX_HOLTTEST], Object[MAX_HOLTTEST],pht[MAX_PLAYERS];
new Float:Yh[MAX_HOLTTEST]= 0.000, Float:Xh[MAX_HOLTTEST] = 0.000, Float:Zh[MAX_HOLTTEST] = 0.000;
stock NextHolt()
{
for(new i; i<=MAX_HOLTTEST; i++)
{
if(Yh <= 0.000 && Xh <= 0.000 && Zh <= 0.000) return i;
}
return 1;
}
stock DestroyHolt(h)
{
DestroyDynamicObject(Object[h]);
Gyilkos[h] = 0;
holttest[h] = 0;
Yh[h] = 0.000;
Xh[h] = 0.000;
Zh[h] = 0.000;
return 1;
}
 
stock DestroyHoltEx(playerid)
{
if(pht[playerid] != 0)
{
DestroyDynamicObject(Object[pht[playerid]]);
Gyilkos[pht[playerid]] = 0;
holttest[pht[playerid]] = 0;
Yh[pht[playerid]] = 0.000;
Xh[pht[playerid]] = 0.000;
Zh[pht[playerid]] = 0.000;
pht[playerid] = 0;
}
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
DestroyHoltEx(playerid);
new ht = NextHolt();
GetPlayerPos(playerid, Yh[ht], Xh[ht], Zh[ht]);
Object[ht] = CreateDynamicObject(3092, Yh[ht], Xh[ht], Zh[ht], 0, 90, 274);
Gyilkos[ht] = killerid;
holttest[ht] = playerid;
pht[playerid] = ht;
return 1;
}
CMD:azonosit(playerid, params[]) //Csak természetes halálnál írja ki a gyilkost is!Ha parancsal ölöd meg, akkor nem!//
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, PIROS, \"Nem vagy admin!\");
for(new i; i<=MAX_HOLTTEST; i++)
 
{
if(!IsPlayerInRangeOfPoint(playerid, 3, Yh, Xh, Zh)) return  SendClientMessage(playerid, PIROS, \"Nincs a közeledben holttest!\");
new name[128];
new name2[128];
new string[100];
GetPlayerName(Gyilkos, name, sizeof(name));
GetPlayerName(holttest, name2, sizeof(name2));
format(string, sizeof(string),\"Holttest: %s Megölte: %s\",name2, name);
SendClientMessage(playerid, PIROS, string);
DestroyDynamicObject(Object);
for(new p; p<MAX_PLAYERS; p++) { if(i == pht[p]) return pht[p] = 0; }
DestroyHolt(i);
 
}
return 1;
}

 
Nem 100% , hogy bugmentes, de nagy valószínûséggel az. Aki akarja teszteli :)
Cím: Holttest Rendszer
Írta: xSkillZ7x - 2012. Június 15. - 17:53:09
Szep es otletes.Megy a +
Cím: Holttest Rendszer
Írta: Amf - 2012. Június 20. - 17:43:11
Sramm, nekem így volt az egyszerûbb!
Cím: Holttest Rendszer
Írta: Sramm - 2012. Június 21. - 08:51:42
Idézetet írta: Amf date=1340206991\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"22501\" data-ipsquote-contentclass=\"forums_Topic
Sramm, nekem így volt az egyszerûbb!
 
De a tiéd bugos is.
Cím: Holttest Rendszer
Írta: Olie - 2012. Június 21. - 16:05:22
Szépecske.
Valóba jó lenne több hulla-object, de egyenlõre nincs.
Majd a 0.3f-ben talán lesz. Imádkozzunk :D
Majd ha rendes géphez jutok letesztelem, de innen nem tudom.
Ránézésre jónak tûnik az eredeti is, viszont valahogy mégis Srammé néz ki szebben.
Persze amíg valaki nem teszteli le, addíg nem nagyon tudjuk meg :D
Cím: Holttest Rendszer
Írta: Norby - 2012. Június 22. - 17:49:50
Idézetet írta: Olie date=1340287522\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"22501\" data-ipsquote-contentclass=\"forums_Topic
Szépecske.
Valóba jó lenne több hulla-object, de egyenlõre nincs.
Majd a 0.3f-ben talán lesz. Imádkozzunk :D
Majd ha rendes géphez jutok letesztelem, de innen nem tudom.
Ránézésre jónak tûnik az eredeti is, viszont valahogy mégis Srammé néz ki szebben.
Persze amíg valaki nem teszteli le, addíg nem nagyon tudjuk meg :D
 
0.3f ?? WTF ?
Szerintem ideje lenne már 0.4. ;)