Jump to content

CalvinC

Uživatel
  • Příspěvků

    9
  • Registrován

  • Aktivní

Reputace

4 Jonny Sindacco

About CalvinC

  • Narozeniny 01/04/2001

Kontaktní údaje

  • Web
    http://www.advance-gaming.com

Návštěvníci

516 profile views
  1. Ty môžeš použiť SetObjectMaterial pre urobenie dverí neviditelnými, ak si si istý, že je to textúra, ale nebudeš vedieť, cez to prechádzať.
  2. Stačí, keď použiješ toto: switch(random(5)) { case 0: SetPlayerChe... case 1: SetPlayerChe... case 2: SetPlayerChe... case 3: SetPlayerChe... case 4: SetPlayerChe... }
  3. Nebude sa to náhodou opakovať nekonečno krát? public OnPlayerSpawn(playerid) { SpawnPlayer(playerid);
  4. Vyzerá to tak, že máš chýbajúcu zátvorku.
  5. Premena môže udržať len jeden bit informácie (jedno písmo). Ale môžeš použiť array pre uloženie stringu zo sscanf. Stačí použiť params. Taktiež, veľkosť tvojej array je zbytočne veľká, na array pre meno ti stačí len číslo 24 a správa pre užívateľa vie udržať len 128. #define isnull(%1) \ ((!(%1[0])) || (((%1[0]) == '\1') && (!(%1[1])))) CMD:v(playerid, params[]) { if(Hrac[playerid][Frakce] == 1 && Hrac[playerid][Frakce] == 2 && Hrac[playerid][Frakce] == 3) return SendClientMessage(playerid, -1, "Tento príkaz nemužeš používat."); { new Name[MAX_PLAYER_NAME]; GetPlayerName(playerid,Name,sizeof(Name)); if(isnull(params)) return SendClientMessage(playerid,-1,"Použití: /f [TEXT]"); { if(Hrac[playerid][Frakce] == 1) { new str[128]; format(str,sizeof(str),"**Vysílacka** %s ríká: %s",Name,params); for(new i = 0;i<MAX_PLAYERS;i++){if(Hrac[i][Frakce] == 1) return SendClientMessage(i,-1,str);} return 1; } if(Hrac[playerid][Frakce] == 2) { new str[128]; format(str,sizeof(str),"**Vysílacka** %s ríká: %s",Name,params); for(new i = 0;i<MAX_PLAYERS;i++){if(Hrac[i][Frakce] == 2) return SendClientMessage(i,-1,str);} return 1; } if(Hrac[playerid][Frakce] == 3) { new str[128]; format(str,sizeof(str),"**Vysílacka** %s ríká: %s",Name,params); for(new i = 0;i<MAX_PLAYERS;i++){if(Hrac[i][Frakce] == 3) return SendClientMessage(i,-1,str);} return 1; } } } return 1; }
  6. Použij streamer pro streamování checkpointu pro zjištení jesli je vlastník domu, múžeš to udělat například takto: new CP; public OnPlayerSpawn(playerid) { CP = CreateDynamicCP(150, 180, 12, 5); } public OnPlayerEnterDynamicCP(playerid) { if(IsPlayerInDynamicCP(playerid, CP)) { if(pInfo[playerid][MajitelDomu] == 1) { // Player je v "CP" checkpointu a je vlastník domu } } } Ale záleží natom, jak to definuješ.
  7. CalvinC

    pomoc Camera

    Takto: public OnPlayerConnect(playerid) { SetSpawnInfo(playerid, 255, 0, 228.8127, 1833.2125, 19.8377, 0, 0, 0, 0, 0, 0, 0); SpawnPlayer(playerid); TogglePlayerControllable(playerid, false); SetPlayerCameraPos(playerid, 316.2698, 1695.7462, 90.0812); SetPlayerCameraLookAt(playerid, 315.9091, 1696.6833, 89.6612); }
  8. CalvinC

    pomoc Zóna.

    Incognitův streamer má funkci pro vytvoření zóny a detekování, kdy do ní hráč vstoupí. Můžete to udělat takto: new HealZone; new Float:HealPoints[] = { // Souřadnice zóny vlož zde: 3000.0,-996.0,2348.0,-972.0,1912.0,-836.0, 1560.0,-752.0,1472.0,-544.0,996.0,-616.0, 868.0,-620.0,80.0,-1200.0,48.0,-1264.0,48.0, -2280.0,260.0,-2696.0,260.0,-4000.0,4000.0, -4000.0,4000.0,-996.0,3000.0,-996.0 // Vyléčí to, když budeš v Los Santos. }; public OnGameModeInit() { HealZone = CreateDynamicPolygon(HealPoints); } public OnPlayerEnterDynamicArea(playerid, areaid) { if(areaid == HealZone) { // Vylécí hráce } }
  9. Volfík, to není stock, stock je tag, který dělá kompilátor ignorovat kód, pokud není používán, které lze provést s proměnnými (pouze globální proměnné): Nový stock My Variable; A funkce: stock My Funkce () Také odebrat "text" pole, a stačí použít "params" místo toho, plýtváte 2kilobajt paměti. A se svým "řetězec" pole, proč používat až 500 buněk? Že na 2 KB paměti, stejně, což není nutné, protože zprávy mohou být pouze 128 znaků, takže stačí použít 128 místo 500. Nakonec vaše "Name" pole má 64 buněk, ale maximální délka název může mít, je 24, takže to je jen plýtvání místem také, měli byste jej dát k 24 místo z 64. Tady je funkce poslat zprávu všem adminů: SendAdminMessage(color, message[]) { for(new i = 0; i < MAX_PLAYERS; i ++) { if(AdminLevel[i] > 0) { SendClientMessage(i, color, message); } } }
×
×
  • Create New...