Peršokti į turinį
  • ŽAIDIMAI
  • , ŽAIDIMAI
  • ŽAIDIMAI

Negalima prašyti ar platinti betkokių žaidimą (multiplayer) palengvinančių programų ir scriptų! Kitaip bus taikoma 1.21. taisyklė

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 4108 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

(redaguota)

Įžanga:

 

Su šia komanda jūs lengvai galėsite palikti kokį nors skelbimą, žinutę ten kur jūs esate 3D Teksto pavidalu.

Šioje temoje bus įkeltas tik scriptas. Kiekviena f-ja išaiškinta nebus.

 

Ką naudosime:

 

Šį kartą mums reikės ( zcmd.inc ) įskiepio bei ( sscanf.dll ) plugin'o.

 

Kodas:

new Text3D:skelbimas[ MAX_PLAYERS ]; 
CMD:skelbti(playerid, params[])
{
    new tekstas[ 100 + 1 ];
    if(isnull(params); return SendClientMessage(playerid, 0xff0000ff, "Neteisingas naudojimas: {ffffff}/skelbti [ tekstas ]");
    if(skelbimas[ playerid ] == Text3D:INVALID_3DTEXT_ID) return SendClientMessage(playerid, 0xff0000ff, "Nesi sukūręs jokio skelbimo");
    if(strlen(params) > 100) return SendClientMessage(playerid, 0xff0000ff, "Žinutė per ilga");
    if(GetPlayerInterior(playerid) != 0) return SendClientMessage(playerid, 0xff0000ff, "Skelbimą palikti galima tik lauke");
    
    new Float:pPos[ 3 ], pVardas[ MAX_PLAYER_NAME ], msg[ 101 + MAX_PLAYER_NAME + 17 ];
    GetPlayerName(playerid, pVardas, MAX_PLAYER_NAME);
    GetPlayerPos(playerid, pPos[ 0 ], pPos[ 1 ], pPos[ 2 ]);
    format(msg, sizeof( msg ), "{afafaf}%s {ffffff}skelbimas:\n{ff0000}%s", pVardas, tekstas);
    skelbimas[ playerid ] = Create3DTextLabel(msg, -1, pPos[ 0 ], pPos[ 1 ], pPos[ 2 ], 50.0, -1, 0);
    return 1;
}
CMD:nskelbimas(playerid)
{
    if(skelbimas[ playerid ] != INVALID_3DTEXT_ID) {
        Delete3DTextLabel(Text3D:skelbimas[ playerid ])
        skelbimas[ playerid ] = INVALID_3DTEXT_ID;
    }
    else
        SendClientMessage(playerid, 0xff0000ff, "Jûs nesate sukûræs jokio skelbimo!"
    return 1;
}

Pabaigai:

 

Kodas nebuvo ištestuotas. Jei pastebėjote klaidų, praneškite komentaruose.

 

Šį scriptą leidžiu naudoti įvairiems tikslams, o kopijuojant kitur, prašyčiau palikti kreditus.

Redaguota , nario DavidB

CS:GO FRAGMOVIE

  • ,

Kam to "tekstas" ir kam to sscanf? Ir šiaip, nereikia po sscanf eilutės ' ; '. 

CMD:skelbti(playerid, params[])
{
    new tekstas[100 + 1];
    if(isnull(params)) return SendClientMessage(playerid, 0xff0000ff, "Neteisingas naudojimas: {ffffff}/skelbti [ tekstas ]");
    if(strlen(params) > 100) return SendClientMessage(playerid, 0xff0000ff, "Þinutë per ilga");
    if(GetPlayerInterior(playerid) != 0) return SendClientMessage(playerid, 0xff0000ff, "Skelbimà palikti galima tik lauke");
    
    new Float:pPos[3], pVardas[MAX_PLAYER_NAME], msg[142];
    GetPlayerName(playerid, pVardas, MAX_PLAYER_NAME);
    GetPlayerPos(playerid, pPos[ 0 ], pPos[ 1 ], pPos[ 2 ]);
    format(msg, sizeof( msg ), "{afafaf}%s {ffffff}skelbimas:\n{ff0000}%s", pVardas, tekstas);
    Create3DTextLabel(msg, -1, pPos[ 0 ], pPos[ 1 ], pPos[ 2 ], 50.0, -1, 0);
    return 1;
}

Ir dar vienas dalykas, tai kad atrodo nereikalinga kad tas "skelbimas" liktų. Suprasčiau jeigu jie visi rašytųsi kažkur kur bet kada kažkas galėtų pažiūrėti.

Reikia Pawn pagalbos? Skype nerašyk.

 

 

 

 

 

 

Kam to "tekstas" ir kam to sscanf? Ir šiaip, nereikia po sscanf eilutės ' ; '. 

CMD:skelbti(playerid, params[])
{
    new tekstas[100 + 1];
    if(isnull(params)) return SendClientMessage(playerid, 0xff0000ff, "Neteisingas naudojimas: {ffffff}/skelbti [ tekstas ]");
    if(strlen(params) > 100) return SendClientMessage(playerid, 0xff0000ff, "Þinutë per ilga");
    if(GetPlayerInterior(playerid) != 0) return SendClientMessage(playerid, 0xff0000ff, "Skelbimà palikti galima tik lauke");
    
    new Float:pPos[3], pVardas[MAX_PLAYER_NAME], msg[142];
    GetPlayerName(playerid, pVardas, MAX_PLAYER_NAME);
    GetPlayerPos(playerid, pPos[ 0 ], pPos[ 1 ], pPos[ 2 ]);
    format(msg, sizeof( msg ), "{afafaf}%s {ffffff}skelbimas:\n{ff0000}%s", pVardas, tekstas);
    Create3DTextLabel(msg, -1, pPos[ 0 ], pPos[ 1 ], pPos[ 2 ], 50.0, -1, 0);
    return 1;
}

Ir dar vienas dalykas, tai kad atrodo nereikalinga kad tas "skelbimas" liktų. Suprasčiau jeigu jie visi rašytųsi kažkur kur bet kada kažkas galėtų pažiūrėti.

 

Dėkui Justai už kritiką ir pastabas. Viską pataisysiu ir pridėsiu naikinimo f-ją.

CS:GO FRAGMOVIE

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 4108 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Prisijungti prie diskusijos

Palikti atsakymą galite iš karto, o užsiregistruoti vėliau. Jeigu jau turite paskyrą mūsų forume, Prisijunkite.

Svečias
Atsakyti šioje temoje...

×   Įklijuotas tekstas turi teksto formatavimą.   Pašalinti teksto formatavimą

  Galimi tik 75 veidukai.

×   Nuoroda buvo automatiškai įterpta.   Įterpti nuorodą paprastai

×   Jūsų ankstesnis pranešimas buvo atkurtas.   Išvalyti redaktorių

×   Jūs negalite įkelti nuotraukas tiesiogiai.Įkelkite arba įdėkite nuotraukas iš URL.

  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai



×
×
  • Sukurti naują...