[Pomoc]Kako napraviti granicu


Započeo Deny1, Avgust 25, 2014, 13:59:34 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: GB:RP
Detaljan opis problema: Neznam kako da napravim da na granici kad npr kucam /granica ili h tipku nebitno naplati npr 100$ i da pise nesto npr deny naplacuje prelaz granice 100 dolara i prolazi
Dio skripte: dacu sve sto treba
Neke slike/video za lakse dobivanje pomoci(neobavezno): dacu sve sto treba

eVo ti primer
Dodas new granica;
new granica;
Nakon toga izmapaj si i ubaci rampe
rampu ubacis ovako
granica = CreateDynamicObject(980,1790.5999800,816.7000100,12.6000000,0.0000000,0.0000000,0.0000000); //object(airportgate) (1)
Ti vamo dodaj svoje kordinate i sve
Onda dalje ides
   if(IsPlayerInRangeOfPoint(playerid, 10.0, 1790.5999800,816.7000100,12.6000000))   // Tu dodaj svoje kordinate
   {
      if(PI[playerid][pPasos] == 1) // vamo mozes pormenit zahtev
      {
          MoveDynamicObject(granicabg,1790.5999800,816.7000100,7.0000000, 3.0);
         KapijeTimer[playerid] = SetTimer("granicabgZA", 9000, 0);
         g_NovacMinus(playerid, 50);
            format(string, sizeof(string), "* %s pokazuje pasos... carinik otvara kapiju.", GetName(playerid));
         ProxDetector(30.0, playerid, string, PROX,PROX,PROX,PROX,PROX);
         SCM(playerid,-1,""ZUTA"Granica | "BELA"Otvorena kapija!");
      }
      else return SCM(playerid,-1, ""ZUTA"[Granica]: "BELA"Nemas Pasos");
   }

Nakon toga moras dodati zatvaranje timer
forward granicabgZA();
public granicabgZA()// ime tvoje granica
{
    MoveDynamicObject(granicabg,1790.5999800,816.7000100,12.6000000, 3.5);
   return 1;
}

A ou ostalom imas tutoriale po pogledja ja sam se zajebo sto sam ti ovo piso xD

Denis_Lapi

*

Balkan SA:MP Web Designer

luka2223 Tvoj primer mu je apsolutno nekoristan jer si mu davao neke stvari koje moraju da se definisu. Pocevsi od "SCM" pa do varijable za anticheat. Da bi on koristio tvoj primer morao bi prvo da izradi AC kao tvoj pa tek onda da ga koristi. Ovde se radi o klasicnom pomeranju objekata i malo varijabli.
Koristicu tvoje objekte da bih mu objasnio, nadam se da su lepo postavljeni.


Za izradu granice potrebno ti je znanje iz kreiranja opstih komandi i par funkcija:

- IsPlayerInRangeOfPoint
- MoveObject
- SetTimerEx
- GivePlayerMoney
- Varijabla za novac
(pMoney) ili neka druga, zavisi koja ti varijabla u tom modu.



new Granica;  // Na pocetak moda



U public OnGameModeInit kreiras objekat i postavljas mu ID (Granica)
Koristicu objekat koji je postavio luka2223 . Ne znam da li je lepo postavljen i dobro izmapan, ali ovo je samo primer.
Granica = CreateObject(980,1790.5999800,816.7000100,12.6000000,0.0000000,0.0000000,0.0000000);


Sledeci korak ti je da pomeras objekat i da igracu kada je na granici oduzme novac:
CMD:granica(playerid, params[])
{
  if(IsPlayerInRangeOfPoint(playerid, 10.0, 1790.5999800,816.7000100,12.6000000)) // Promeri koordinate
  {
  MoveObject(Granica, 1790.5999800,816.7000100,7.0000000, 3.0); // pomera kapiju
  GivePlayerMoney(playerid, -150);
  PlayerInfo[playerid][pMoney] -=150; // Oduzima vrednost varijabli
  SendClientMessage(playerid, -1, "Prosli ste granicu i platili 150$"); // Ipsisuje poruku
  SetTimerEx("GranicaZatvorena",15000, false, "i", playerid); // Pokrece timer koji ce za 15 sekundi da zatvori kapiju
  }
  else return SendClientMessage(playerid, -1, "Niste na granici");
 return 1;
}


Kada timer prodje dolazi do odazivanja sledeces publici kojeg forwardujes i u kojem postavljas koordinate zatvorene kapije
forward GranicaZatvorena();
public GranicaZatvorena()
{
 MoveObject(Granica, 1790.5999800,816.7000100,12.6000000, 3.5); // Zatvaras kapiju
 return 1;
}


Ako naidjes na gresku napisi je ovde da ti je resim. Ali mislim da ne bi trebalo da ih bude.

[FS] Bank Sistem
[TuT] Array Sistem (Napredna)


"Pa krenite na mene i provesce te se super ko kapetan Kuka kada levom brise dupe"

www.denis-lapi.com

Hoce on i da se otvara na h rampa
Dali mozes meni da pomognes oko ove komande neradi mi kad je igrac u vozilu kad stisne h da se porta na oderedeno mesto a kada nisam u vozilu stisnem h oce zasto to?
evo komanda
if(newkeys & KEY_CROUCH)
	{
	  new string[100],idv;
		 if(IsPlayerInRangeOfPoint(playerid, 3,1828.1404,-1538.8190,13.3417))   //
	{
		if(PI[playerid][pClan] == 1 || PI[playerid][pLider] == 1)
	{
       if(GetPlayerState(playerid) == 2)
    {
        new idv = GetPlayerVehicleID(playerid);
        SetVehiclePos(idv, 1818.6010,-1536.4381,13.3757);
    }
    else
    {
        SetPlayerPos(playerid, 1818.6010,-1536.4381,13.3757);
    }
    }
		else return SCM(playerid,-1, ""JCRVENA"ERROR: "SVCRVENA"Samo clanovi LAPD!");
	}
	}

Denis_Lapi

*

Balkan SA:MP Web Designer

Citat: luka2223 poslato Avgust 25, 2014, 17:57:31 POSLE PODNE
Hoce on i da se otvara na h rampa
Dali mozes meni da pomognes oko ove komande neradi mi kad je igrac u vozilu kad stisne h da se porta na oderedeno mesto a kada nisam u vozilu stisnem h oce zasto to?
evo komanda
if(newkeys & KEY_CROUCH)
	{
	  new string[100],idv;
		 if(IsPlayerInRangeOfPoint(playerid, 3,1828.1404,-1538.8190,13.3417))   //
	{
		if(PI[playerid][pClan] == 1 || PI[playerid][pLider] == 1)
	{
       if(GetPlayerState(playerid) == 2)
    {
        new idv = GetPlayerVehicleID(playerid);
        SetVehiclePos(idv, 1818.6010,-1536.4381,13.3757);
    }
    else
    {
        SetPlayerPos(playerid, 1818.6010,-1536.4381,13.3757);
    }
    }
		else return SCM(playerid,-1, ""JCRVENA"ERROR: "SVCRVENA"Samo clanovi LAPD!");
	}
	}


Otvori temu, ne spamaj coveku bez ikakve potrebe, skupljas mu postove bez razloga

[FS] Bank Sistem
[TuT] Array Sistem (Napredna)


"Pa krenite na mene i provesce te se super ko kapetan Kuka kada levom brise dupe"

www.denis-lapi.com