Szerző Téma: Textdraw  (Megtekintve 597 alkalommal)

Nem elérhető BigTics

  • 1573
    • Profil megtekintése
Textdraw
« Dátum: 2012. április 13. - 21:37:52 »
0 Show voters
Sziasztok szeretnék kérni tõletek ( szerintem nagy])segítséget.

Elkezdtem nézegetni a GM -eket és találtam egy jó TDM -est.


Csak egy gond van vele hogy nem tetszik ahol van és ahogy


kinéz ahol számolja ki vezet.


Itt a GM:

 
#include <a_samp>
#include <zcmd>
#define COLOR_LIGHTGREEN 0x00CC00AA
#define COLOR_PINK 0xFF00FFAA
#define red 5
#define blue 3
#define maxtk 3
#define roundkills 50
#define COLOR_RED 0xFF0000AA
#define COLOR_BLUE 0x00FFFFAA   // lightblue
#define pJutalom 5 // Ennyi egymás utáni ölésnél kap jutalmat
new rKills;
new bKills;
new pName[MAX_PLAYER_NAME];
new string[256];
new tk[MAX_PLAYERS];
new pKills[MAX_PLAYERS];
new Text:allas;
new allastimer;
new strallas[256];
forward changeallas();
stock Equip(playerid)
{
SetPlayerHealth(playerid,100);
SetPlayerArmour(playerid,100);
}
stock w(playerid)
{
GivePlayerWeapon(playerid,26,60);
GivePlayerWeapon(playerid,32,460);
GivePlayerWeapon(playerid,4,1);
}
stock AddPlayerScore(playerid,score)
{
SetPlayerScore(playerid,GetPlayerScore(playerid)+score);
}
main()
{
print(\"-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-\");
print(\" WAR MODE >v2.0>By BuBa>Loaded\");
print(\" CopyRight 2011 \");
print(\"-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-\");
}
public OnGameModeInit()
{
SetGameModeText(\"[HuN]War Mod v2.0\");
AddPlayerClass(19,-2118.4238,222.3794,38.8127,179.0048,0,0,0,0,0,0); // rSpawn
AddPlayerClass(21,-2133.5227,180.7969,41.9599,269.5356,0,0,0,0,0,0); // bSpawn
UsePlayerPedAnims();
SetWorldTime(16);
AllowInteriorWeapons(1);
SetNameTagDrawDistance(15.0);
EnableZoneNames(1);
SetGravity(0.00800);
SetWeather(6);
rKills = 0;
bKills = 0;
allastimer = SetTimer(\"changeallas\",1000,true);
allas = TextDrawCreate(508,9,\"~r~0 ~w~: ~b~0\");
TextDrawFont(allas,2);
return 1;
}
public changeallas()
{
TextDrawDestroy(allas);
format(strallas,256,\"~r~%d ~w~: ~b~%d\",rKills,bKills);
allas = TextDrawCreate(508,9,strallas);
TextDrawHideForAll(allas);
TextDrawShowForAll(allas);
}
public OnGameModeExit()
{
print(\"-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-\");
print(\" WAR MODE >v2.0>By BuBa>Unloaded\");
print(\" CopyRight 2011\");
print(\"-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-\");
KillTimer(allastimer);
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, -1973.7379,487.3510,29.1719);
SetPlayerFacingAngle(playerid,90.76);
SetPlayerCameraLookAt(playerid, -1973.7379,487.3510,29.1719);
SetPlayerCameraPos(playerid, -1981.8933,487.3388,29.0156);
return 1;
}
public OnPlayerConnect(playerid)
{
GameTextForPlayer(playerid,\"~red~ reds~w~ vs~blue~ blues\",4000,1);
tk[playerid] = 0;
pKills[playerid] = 0;
SetPlayerScore(playerid,0);
SendClientMessage(playerid,COLOR_LIGHTGREEN,\"Jó játékot\");
GetPlayerName(playerid,pName,sizeof(pName));
format(string,256,\"%s jött játszani.\",pName);
SendClientMessageToAll(COLOR_PINK,string);
return 1;
}
// Parancsok
CMD:help(playerid,params[])
{
SendClientMessage(playerid,COLOR_PINK,\"A játékmód lényege: Öld meg a másik csapat tagjait!\");
format(string,sizeof(string),\"Ha %d-nál többször megölöd a társad, a szerver kirúg.\",maxtk);
SendClientMessage(playerid,COLOR_PINK,string);
format(string,sizeof(string),\"Ha a csapatod eléri a %d ölést akkor nyert!\",roundkills);
SendClientMessage(playerid,COLOR_PINK,string);
format(string,sizeof(string),\"Piros ölések: %d Kék ölések: %d\",rKills,bKills);
SendClientMessage(playerid,COLOR_PINK,string);
SendClientMessage(playerid,COLOR_PINK,\"Fegyver vétel: /weapon(/w)   3 pontba kerül!\");
format(string,sizeof(string),\"KillStreak: %d ölés   {00CC00} %d-nál jutalom!\",pKills[playerid],pJutalom);
SendClientMessage(playerid,COLOR_PINK,string);
return 1;
}
CMD:w(playerid,params[])
{
if(GetPlayerScore(playerid) < 3) return SendClientMessage(playerid,COLOR_PINK,\"Nincs három pontod!\");
w(playerid);
return 1;
}
CMD:weapon(playerid,params[])
{
if(GetPlayerScore(playerid) < 3) return SendClientMessage(playerid,COLOR_PINK,\"Nincs három pontod!\");
w(playerid);
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
TextDrawHideForPlayer(playerid, allas);
switch(reason)
    {
        case 0:
        {
             GetPlayerName(playerid,pName,sizeof(pName));
             format(string,256,\"%s elhagyta a szervert. (Kifagyott)\",pName);
             SendClientMessageToAll(COLOR_PINK,string);
   }
        case 1:
        {
             GetPlayerName(playerid,pName,sizeof(pName));
             format(string,256,\"%s elhagyta a szervert. (Kilépett)\",pName);
             SendClientMessageToAll(COLOR_PINK,string);
   }
        case 2:
        {
             GetPlayerName(playerid,pName,sizeof(pName));
             format(string,256,\"%s elhagyta a szervert. (Kick/Ban)\",pName);
             SendClientMessageToAll(COLOR_PINK,string);
   }
}
return 1;
}
public OnPlayerSpawn(playerid)
{
if(GetPlayerSkin(playerid) == 19)
{
    SetPlayerColor(playerid,COLOR_RED);
    SetPlayerTeam(playerid,red);
    w(playerid);
Equip(playerid);
}
else
{
    SetPlayerColor(playerid,COLOR_BLUE);
    SetPlayerTeam(playerid,blue);
    w(playerid);
Equip(playerid);
}
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
pKills[playerid] = 0;
SendClientMessage(playerid,COLOR_PINK,\"Meghaltál, a KillStreak pontod nullázódott.\");
if(killerid == INVALID_PLAYER_ID)
{
SendDeathMessage(killerid,playerid,reason);
}
else
{
new DeadpName[MAX_PLAYER_NAME];
GetPlayerName(killerid,pName,sizeof(pName));
GetPlayerName(playerid,DeadpName,sizeof(DeadpName));
SendDeathMessage(killerid,playerid,reason);
if(GetPlayerTeam(killerid) == red)
{
    if(GetPlayerTeam(playerid) == red)
   {
       pKills[killerid] = 0;
      tk[killerid]++;
      AddPlayerScore(killerid,-1);
      format(string,sizeof(string),\"%s megölte a társát, %s -t ez neki a %d/%d teamkill-je\",pName,DeadpName,tk[killerid],maxtk);
      SendClientMessageToAll(COLOR_PINK,string);
      if(tk[killerid] == maxtk)
      {
          format(string,sizeof(string),\"%s -t kirúgta a szerver, mert %d -szer megölte a társát.\",pName,maxtk);
          Kick(killerid);
          SendClientMessageToAll(COLOR_PINK,string);
      }
      else
      {
         format(string,sizeof(string),\"Figyelj jobban, már %d -szer öltél csapattársat! %d-nál kick!\",tk[killerid],maxtk);
         SendClientMessage(killerid,COLOR_PINK,string);
      }
   }
   else
   {
       rKills++;
       pKills[killerid]++;
      format(string,sizeof(string),\"%s megölte %s -t, ezzel a csapata már a %d-dik ölésnél jár.\",pName,DeadpName,rKills);
      SendClientMessageToAll(COLOR_LIGHTGREEN,string);
      AddPlayerScore(killerid,1);
      if(pKills[killerid] == pJutalom)
      {
         format(string,sizeof(string),\"%s-nek összegyûlt egymás után %d ölés, ezért feltöltõdik az élete és pajzsa\",pName,pJutalom);
         SendClientMessageToAll(COLOR_PINK,string);
         Equip(killerid);
         SendClientMessage(killerid,COLOR_PINK,\"Ezzel lenullázódtak az egymás után való öléseid.\");
         pKills[killerid] = 0;
      }
      else return 0;
   }
   if(rKills == roundkills)
   {
      format(string,sizeof(string),\"A piros csapat megnyerte a kört, a mód újraindul.\");
      SendClientMessageToAll(COLOR_PINK,string);
      SendRconCommand(\"gmx\");
   }
}
else
{
   if(GetPlayerTeam(playerid) == blue)
    {
      tk[killerid]++;
      AddPlayerScore(killerid,-1);
      format(string,sizeof(string),\"%s megölte a társát, %s -t ez neki a %d/%d teamkill-je\",pName,DeadpName,tk[killerid],maxtk);
      SendClientMessageToAll(COLOR_PINK,string);
      if(tk[killerid] == maxtk)
      {
          format(string,sizeof(string),\"%s -t kirúgta a szerver, mert %d -szer megölte a társát.\",pName,maxtk);
          SendClientMessageToAll(COLOR_PINK,string);
      }
      else
      {
         format(string,sizeof(string),\"Figyelj jobban, már %d -szer öltél csapattársat! %d-nál kick!\",tk[killerid],maxtk);
      }
   }
   else
   {
       bKills++;
      format(string,sizeof(string),\"%s megölte %s -t, ezzel a csapata már a %d-dik ölésnél jár.\",pName,DeadpName,rKills);
      SendClientMessageToAll(COLOR_LIGHTGREEN,string);
      AddPlayerScore(playerid,1);
   }
   if(bKills == roundkills)
   {
      format(string,sizeof(string),\"A kék csapat megnyerte a kört, a mód újraindul.\");
      SendClientMessageToAll(COLOR_PINK,string);
      SendRconCommand(\"gmx\");
   }
}
}
return 1;
}

 
Ha megtudnátok nekem úgy csinálni hogy:

Egy ablakban (Box vmi  :laugh: )van és


úgy számolná hogy melyik csapat vezet pl.: RedTeam: 0 : 0 :BlueTeam


Vagy ahogy szerintetek szebb.   :D


Az elhelyezése a $ alá szeretném.


Szín mindegy azt be tudom állítani.   :D


Nem értek annyira a Szkriptekhez.


Elõre is köszönöm hogy ( ha  :laugh: ) megcsinálod.  :)

Világos témán olvashatatlan fehér szöveg. Javítva.
« Utoljára szerkesztve: 2012. április 15. - 15:55:57 írta BigTics »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal