[Pomoc] Broj zapreka

Započeo WaLLa
24. Dec. 2012. Zaključano
657
pregleda
19
postova
Marshall
3
Hustler
24. Dec. 2012.
Skripta koju koristim: CLRP
Detaljan opis problema: Znaci ubacio sam sistem za zapreke u dialozima, znaci upisemo /Zapreka, otvori nam se dijalog i tamo biramo koju zapreku zelimo postaviti... Ali mene zanima kako da napravim da jedan igrac moze postaviti samo 4 zapreke, ako me razumijete?
Dio skripte:
Komanda /zapreka:
if(strcmp(cmdtext, "/zapreka", true) == 0)
{
    if(PlayerInfo == 1 || PlayerInfo == 1 || PlayerInfo == 2 || PlayerInfo == 2 || PlayerInfo == 3 || PlayerInfo == 3)
    {
        if(PlayerInfo >= 5)
        {
        ShowPlayerDialog(playerid, 1033, DIALOG_STYLE_LIST, "{47A0FF}{FFFFFF} Koju vrstu zelite postaviti:", "\nMala zapreka \nSrednja zapreka \nVelika zapreka \nCunj ", "Postavi", "Odustani");
}
            else return SendClientMessage(playerid, COLOR_RED,"(Greska!) {C4C4C4}Morate biti rank 2+.");
}
        else return SendClientMessage(playerid, COLOR_RED,"(Greska!) {C4C4C4}Niste clan drzavnih organizacija te ne mozete staviti zapreku.");
    return 1;
}


Evo dio dijaloga za prvu zapreku... Ako treba ostatak recite...
if(dialogid == 1033) // ZAPREKA SISTEM
{
if(response)
{
  if(listitem == 0)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
new Float:plocx,Float:plocy,Float:plocz,Float:ploca;
        GetPlayerPos(playerid, plocx, plocy, plocz);
        GetPlayerFacingAngle(playerid,ploca);
        CreateRoadblock(1459,plocx,plocy,plocz,ploca);
        GameTextForPlayer(playerid,"~w~Mala Zapreka ~g~Postavljena!",3000,1);
        format(string, sizeof(string), "* %s je postavio malu zapreku.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}


I ovo imam na pocetku skripte:
#define MAX_ROADBLOCKS 4 // ZAPREKA SISTEM

Recite ako vam treba jos koji dio pa cu vam dati...
Neke slike/video za lakse dobivanje pomoci(neobavezno): /
Blaeks_Biofor
5
Forum Don
24. Dec. 2012.
stavi ovo na vrh
new putauzeto;
i sada stavi tamo gde ti odgovara ovo
if(putauzeto == 4) // koliko puta da mogu uzeti
  {
  SendClientMessage(playerid,-1,"uzo si 4 puta, dosta ti je!");
  return 1;
  }
i da bi napunio ova 4 puta, stavis ovo isto u komandu
putauzeto ++;
Marshall
3
Hustler
24. Dec. 2012.
ok, to mi sad radi...

da ne otvaram novu temu, da li minetko moze pomoci? Znaci imam komandu /maknizapreku, i kako da napravim kad nije u blizini ijedne zapreke da se igracu ispise "Greska. Nisi u blizini zapreke" Evo komanda pa ako mi mozete sloziti...
if (strcmp(cmdtext, "/maknizapreku",true) == 0)
{
    if(PlayerInfo == 1 || PlayerInfo == 1 || PlayerInfo == 2 || PlayerInfo == 2 || PlayerInfo == 3 || PlayerInfo == 3 || IsPlayerAdmin(playerid))
    {
        if(PlayerInfo >= 2)
        {
        new string;
        new sendername;
        putauzeto --;
GetPlayerName(playerid, sendername, sizeof(sendername));
        DeleteClosestRoadblock(playerid);
        GameTextForPlayer(playerid,"~w~Zapreka ~r~uklonjena!",3000,1);
    format(string, sizeof(string), "* %s je uklonio zapreku.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
else return SendClientMessage(playerid, COLOR_RED,"(Greska!) {C4C4C4}Morate biti rank 2+.");
}
else return SendClientMessage(playerid, COLOR_RED,"(Greska!) {C4C4C4}Niste clan drzavnih organizacije niti admin.");
    return 1;
}
Blaeks_Biofor
5
Forum Don
24. Dec. 2012.
if (strcmp(cmdtext, "/maknizapreku",true) == 0)
{
    if(PlayerInfo == 1 || PlayerInfo == 1 || PlayerInfo == 2 || PlayerInfo == 2 || PlayerInfo == 3 || PlayerInfo == 3 || IsPlayerAdmin(playerid))
      if(!IsPlayerInRangeOfPoint(playerid, 7.0, koordinate)) return SendClientMessage(playerid, -1, " nisi u blizini ");
    {
        if(PlayerInfo >= 2)
        {
        new string;
        new sendername;
        putauzeto --;
GetPlayerName(playerid, sendername, sizeof(sendername));
        DeleteClosestRoadblock(playerid);
        GameTextForPlayer(playerid,"~w~Zapreka ~r~uklonjena!",3000,1);
    format(string, sizeof(string), "* %s je uklonio zapreku.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
else return SendClientMessage(playerid, COLOR_RED,"(Greska!) {C4C4C4}Morate biti rank 2+.");
}
else return SendClientMessage(playerid, COLOR_RED,"(Greska!) {C4C4C4}Niste clan drzavnih organizacije niti admin.");
    return 1;
}
Marshall
3
Hustler
25. Dec. 2012.
Blaeks, kad napravim tako kako si mi napisao, dobijem ovaj error:
C:\Users\WaLLa\Desktop\Toxic Gaming v1.0.0\gamemodes\CLRP.pwn(35996) : error 017: undefined symbol "koordinate"
C:\Users\WaLLa\Desktop\Toxic Gaming v1.0.0\gamemodes\CLRP.pwn(36011) : error 029: invalid expression, assumed zero
C:\Users\WaLLa\Desktop\Toxic Gaming v1.0.0\gamemodes\CLRP.pwn(36011) : warning 215: expression has no effect
C:\Users\WaLLa\Desktop\Toxic Gaming v1.0.0\gamemodes\CLRP.pwn(36011) : error 001: expected token: ";", but found "return"
C:\Users\WaLLa\Desktop\Toxic Gaming v1.0.0\gamemodes\CLRP.pwn(36012) : warning 225: unreachable code
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase

3 Errors.
Vuzimir
5
Kingpin
25. Dec. 2012.
Quote from December 25, 2012, 2:20 am:
Blaeks, kad napravim tako kako si mi napisao, dobijem ovaj error:
C:\Users\WaLLa\Desktop\Toxic Gaming v1.0.0\gamemodes\CLRP.pwn(35996) : error 017: undefined symbol "koordinate"
C:\Users\WaLLa\Desktop\Toxic Gaming v1.0.0\gamemodes\CLRP.pwn(36011) : error 029: invalid expression, assumed zero
C:\Users\WaLLa\Desktop\Toxic Gaming v1.0.0\gamemodes\CLRP.pwn(36011) : warning 215: expression has no effect
C:\Users\WaLLa\Desktop\Toxic Gaming v1.0.0\gamemodes\CLRP.pwn(36011) : error 001: expected token: ";", but found "return"
C:\Users\WaLLa\Desktop\Toxic Gaming v1.0.0\gamemodes\CLRP.pwn(36012) : warning 225: unreachable code
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase

3 Errors.


Probaj ovako:
if (strcmp(cmdtext, "/maknizapreku",true) == 0)
{
    if(PlayerInfo == 1 || PlayerInfo == 1 || PlayerInfo == 2 || PlayerInfo == 2 || PlayerInfo == 3 || PlayerInfo == 3 || IsPlayerAdmin(playerid))
    {
        if(PlayerInfo >= 2)
        {
        new string;
        new sendername;
        putauzeto --;
GetPlayerName(playerid, sendername, sizeof(sendername));
        DeleteClosestRoadblock(playerid);
        GameTextForPlayer(playerid,"~w~Zapreka ~r~uklonjena!",3000,1);
    format(string, sizeof(string), "* %s je uklonio zapreku.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
else return SendClientMessage(playerid, COLOR_RED,"(Greska!) {C4C4C4}Morate biti rank 2+.");
}
else return SendClientMessage(playerid, COLOR_RED,"(Greska!) {C4C4C4}Niste clan drzavnih organizacije niti admin.");
    return 1;
}
Marshall
3
Hustler
25. Dec. 2012.
Vuzimir, ali ja zelim d napravim ako nema nijedna zapreka u blizini mene, da mi ispiše "(Greska) Nema ni jedan zapreka u blizini vas" to mi treba
Blaeks_Biofor
5
Forum Don
25. Dec. 2012.
tamo gde sam ti napisao "koordinate" stavis tvoje koordinate, znaci usnimis ih komandom /save i stavis ih tu
Marshall
3
Hustler
25. Dec. 2012.
ali kako cu stavit koordinate kad ja zapreku mogu npraviti na bilo kojem mjestu :S
Blaeks_Biofor
5
Forum Don
25. Dec. 2012.
pa kada napravis na drugom mesto dodas pored toga ovo || i onda nastavis !IfIsPlayer...blalbla
Marshall
3
Hustler
25. Dec. 2012.
ali to je IG kreiranje /zapreke... dodjem do nekog mjesta i upisem /zapreka i stvori mi se zapreka, odem na neko drugo mjesto i /zapreka i stvori mi se jos jedna zapreka... Jel razumiješ?
Blaeks_Biofor
5
Forum Don
25. Dec. 2012.
da razumem te, ali ti mene ne razumes, samo usnimis koordinate(/save) i onda stavis proveru
Marshall
3
Hustler
25. Dec. 2012.
Jel imas skype, ili tako nesto pa da mi preko teamviewera napravis... Lakse ces mi tako pomoci
Blaeks_Biofor
5
Forum Don
25. Dec. 2012.
ako ti je lakse, napravi stock
stock Mesta1(playerid)
{
if(IsPlayerConnected(playerid))
{
    if(PlayerToPoint(3.0,playerid,TVOJE KOORDINATE))
    {
        return 1;
    }
    else if(PlayerToPoint(3.0,playerid,TVOJE KOORDINATE) || PlayerToPoint(3.0,playerid,TVOJE KOORDINATE))
{
    return 1;
}
else if(PlayerToPoint(3.0,playerid,TVOJE KOORDINATE) || PlayerToPoint(3.0,playerid,TVOJE KOORDINATE))
{
    return 1;
}
}
return 0;
}
i tu ispostavljas tvoje koordinate, i onda u komandu stavis ovo proveru
if(!ZaprekaMesta(playerid)) return SendClientMessage(playerid, -1, "nisi tu ");
Marshall
3
Hustler
26. Dec. 2012.
Ali koje koordinate da stavim... Evo ti cijeli sistem zapreka sad...

komanda /zapreka

Imam ovaj enum na pocetku skripte:
enum rInfo//ZAPREKA SISTEM
{
    sCreated,
    Float:sX,
    Float:sY,
    Float:sZ,
    sObject,
};


Komande:
if(strcmp(cmdtext, "/zapreka", true) == 0)
{
    if(PlayerInfo == 1 || PlayerInfo == 1 || PlayerInfo == 2 || PlayerInfo == 2 || PlayerInfo == 3 || PlayerInfo == 3)
    {
        if(PlayerInfo >= 2)
        {
        ShowPlayerDialog(playerid, 1033, DIALOG_STYLE_LIST, "{47A0FF}{FFFFFF} Koju vrstu zelite postaviti:", "\nMala zapreka \nSrednja zapreka \nVelika zapreka \nCunj ", "Postavi", "Odustani");
}
            else return SendClientMessage(playerid, COLOR_RED,"(Greska!) {C4C4C4}Morate biti rank 2+.");
}
        else return SendClientMessage(playerid, COLOR_RED,"(Greska!) {C4C4C4}Niste clan drzavnih organizacija te ne mozete staviti zapreku.");
    return 1;
}
if (strcmp(cmdtext, "/maknizapreku",true) == 0)
{
    if(PlayerInfo == 1 || PlayerInfo == 1 || PlayerInfo == 2 || PlayerInfo == 2 || PlayerInfo == 3 || PlayerInfo == 3 || IsPlayerAdmin(playerid))
{
        if(PlayerInfo >= 2)
        {
                    new string;
        new sendername;
        putauzeto --;
GetPlayerName(playerid, sendername, sizeof(sendername));
        DeleteClosestRoadblock(playerid);
        GameTextForPlayer(playerid,"~w~Zapreka ~r~uklonjena!",1500,5);
    format(string, sizeof(string), "* %s je uklonio zapreku.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
else return SendClientMessage(playerid, COLOR_RED,"(Greska!) {C4C4C4}Morate biti rank 2+.");
}
else return SendClientMessage(playerid, COLOR_RED,"(Greska!) {C4C4C4}Niste clan drzavnih organizacije niti admin.");
    return 1;
}
if (strcmp(cmdtext, "/maknisvezapreke",true) == 0)
{
    if(PlayerInfo == 1 || PlayerInfo == 2 || PlayerInfo == 3 || IsPlayerAdmin(playerid))
    {
        putauzeto --;
        putauzeto --;
        putauzeto --;
        putauzeto --;
    DeleteAllRoadblocks(playerid);
GameTextForPlayer(playerid,"~w~Sve zapreke ~r~uklonjene!",2000,5);
}
else return SendClientMessage(playerid, COLOR_RED,"(Greska!) {C4C4C4}Niste sef drzavne organizacije niti admin.");
    return 1;
}


I dialog za zapreke:
if(dialogid == 1033) // ZAPREKA SISTEM
{
if(response)
{
  if(listitem == 0)
{
  if(putauzeto == 4) // koliko puta da mogu uzeti
{
  SendClientMessage(playerid,-1,"{AA3333}(Greska){C4C4C4} Ne mozes postaviti vise od 4 zapreke.");
  return 1;
  }
  else
  {
      putauzeto ++;
GetPlayerName(playerid, sendername, sizeof(sendername));
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
new Float:plocx,Float:plocy,Float:plocz,Float:ploca;
        GetPlayerPos(playerid, plocx, plocy, plocz);
        GetPlayerFacingAngle(playerid,ploca);
        CreateRoadblock(1459,plocx,plocy,plocz,ploca);
        GameTextForPlayer(playerid,"~w~Mala Zapreka ~g~Postavljena!",1500,5);
        format(string, sizeof(string), "* %s je postavio malu zapreku.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
}
if(listitem == 1)
{
    if(putauzeto == 4) // koliko puta da mogu uzeti
{
  SendClientMessage(playerid,-1,"{AA3333}(Greska){C4C4C4} Ne mozes postaviti vise od 4 zapreke.");
  return 1;
  }
  else
  {
    putauzeto ++;
    GetPlayerName(playerid, sendername, sizeof(sendername));
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
new Float:plocx,Float:plocy,Float:plocz,Float:ploca;
        GetPlayerPos(playerid, plocx, plocy, plocz);
        GetPlayerFacingAngle(playerid,ploca);
        CreateRoadblock(978,plocx,plocy,plocz+0.6,ploca);
        GameTextForPlayer(playerid,"~w~Srednja Zapreka ~g~Postavljena!",1500,5);
        format(string, sizeof(string), "* %s je postavio srednju zapreku.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
}
if(listitem == 2)
{
    if(putauzeto == 4) // koliko puta da mogu uzeti
{
  SendClientMessage(playerid,-1,"{AA3333}(Greska){C4C4C4} Ne mozes postaviti vise od 4 zapreke.");
  return 1;
  }
  else
  {
    putauzeto ++;
    GetPlayerName(playerid, sendername, sizeof(sendername));
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
new Float:plocx,Float:plocy,Float:plocz,Float:ploca;
        GetPlayerPos(playerid, plocx, plocy, plocz);
        GetPlayerFacingAngle(playerid,ploca);
        CreateRoadblock(981,plocx,plocy,plocz+0.9,ploca+180);
        GameTextForPlayer(playerid,"~w~ Velika Zapreka ~g~Postavljena!",1500,5);
        SetPlayerPos(playerid, plocx, plocy+1.3, plocz);
        format(string, sizeof(string), "* %s je postavio veliku zapreku.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
}
if(listitem == 3)
{
    if(putauzeto == 4) // koliko puta da mogu uzeti
{
  SendClientMessage(playerid,-1,"{AA3333}(Greska){C4C4C4} Ne mozes postaviti vise od 4 zapreke.");
  return 1;
  }
  else
  {
    putauzeto ++;
    GetPlayerName(playerid, sendername, sizeof(sendername));
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
new Float:plocx,Float:plocy,Float:plocz,Float:ploca;
        GetPlayerPos(playerid, plocx, plocy, plocz);
        GetPlayerFacingAngle(playerid,ploca);
        CreateRoadblock(1238,plocx,plocy,plocz+0.2,ploca);
        GameTextForPlayer(playerid,"~w~Cunj ~g~Postavljen!",1500,5);
        format(string, sizeof(string), "* %s je postavio cunj.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
}
}
return 1;
}


Eto cijeli sistem. Pa ako ti je sad lakse da mi ti ubacis to svoje u moj sistem i da radi...

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha