[INC] Sustav surfanja

Započeo Correlli, Novembar 04, 2010, 10:02:38 PRE PODNE

prethodna tema - sledeća tema

0 članova i 2 gostiju pregledaju ovu temu.

Correlli

Å ta je ovo?
Ovo je obični include fajl koji vam omogućava da stavite daske za surfanje na server i koristite ih. Može biti korisno ako želite malo zabave.


Video:
http://img716.imageshack.us/img716/2379/surfingsystem.mp4


Zasluge:
- Y_Less za foreach & GetXYInFrontOfPlayer funkcije,
- ZeeX za zcmd procesor komandi.


Kako instalirati?
Lahko i jednostavno - skinite i stavite surfboard.inc u \pawno\include\ mapu i isto tako napravite i sa foreach.inc i zcmd.inc fajlom.
Otvorite skriptu i stavite ovo:
#include <foreach>
#include <zcmd>
#include <surfboard>

odma iza
#include <a_samp>
Daske za surfanje stavite u OnGameModeInit callback.
Primjer:
/*
CreateSurfboard(modelid, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz = 0.0);
*/
CreateSurfboard(1, 548.57208252, -1910.07702637, 0.0, 270.0, 0.0, 180.0);
CreateSurfboard(2, 546.25457764, -1909.92712402, 0.0, 270.0, 0.0, 180.0);
CreateSurfboard(3, 543.55535889, -1909.75854492, 0.0, 270.0, 0.0, 180.0);
CreateSurfboard(1, 540.91290283, -1909.6159668, 0.0, 270.0, 0.0, 180.0);
CreateSurfboard(3, 538.32940674, -1908.54333496, 0.0, 270.0, 0.0, 180.0);

Ove daske za surfanje su locirane kod obale Svete Marije (Santa Maria Beach). Evo vam i spawn kordinate:
542.57208252, -1912.07702637, 2.0


Funkcije:
CreateSurfboard
Sa ovom funkcijom možete staviti dasku za surfanje na server.
@modelid = Model-ID daske za surfanje - važeći modelID-ovi su 1, 2 i 3.
@Float: x = Početna X kordinata daske za surfanje.
@Float: y = Početna Y kordinata daske za surfanje.
@Float: z = Početna Z kordinata daske za surfanje.
@Float: rx = Početna X rotacija daske za surfanje.
@Float: ry = Početna Y rotacija daske za surfanje.
@Float: rz = Početna Z rotacija daske za surfanje.
vrati ID daske za surfanje koji počinje sa 0. Ako preÄ'ete MAX_SURFBOARDS defin onda će vam funkcija vratiti nevažeći ID a to je -1.
Primjer:
new
       gSurfboard = -1;

public OnGameModeInit()
{
   gSurfboard = CreateSurfboard(1, 548.57208252, -1910.07702637, 0.0, 270.0, 0.0, 180.0);
   return true;
}


DestroySurfboard
Sa ovom funkcijom možete ukloniti dasku za surfanje sa servera.
@sbid = ID daske za surfanje.
vrati true ako daska za surfanje postoji na serveru i false ako ne.
Primjer:
DestroySurfboard(gSurfboard);

IsSurfboardCreated
Sa ovom funkcijom možete provjeriti da li daska za surfanje postoji na serveru.
@sbid = ID daske za surfanje.
vrati true ako daska za surfanje postoji na serveru i false ako ne.
Primjer:
if(IsSurfboardCreated(gSurfboard)) printf("Daska za surfanje već postoji na serveru.");
else printf("Daska za surfanje NE postoji na serveru.");


StopSurfboard
Sa ovom funkcijom možete zaustaviti dasku za surfanje.
@sbid = ID daske za surfanje.
vrati true ako daska za surfanje postoji na serveru i false ako ne.
Primjer:
StopSurfboard(gSurfboard);

RespawnSurfboard
Sa ovom funkcijom možete re-spawnati dasku za surfanje.
@sbid = ID daske za surfanje.
vrati true ako daska za surfanje postoji na serveru i false ako ne.
Primjer:
RespawnSurfboard(gSurfboard);

SetSurfboardSpeed
Sa ovom funkcijom možete staviti brzinu daski za surfanje.
@sbid = ID daske za surfanje.
@surfspeed = Brzina koju želite staviti daski za surfanje.
vrati true ako daska za surfanje postoji na serveru i false ako ne.
Ako stavite brzinu koja je veća od MAX_SURFBOARD_SPEED onda će funkcija automatsko staviti brzinu koja je definirana sa MAX_SURFBOARD_SPEED.
Primjer:
Ovo će staviti brzinu daske za surfanje na 3.5:
SetSurfboardSpeed(gSurfboard, 3.5);
Ovo će staviti brzinu daske za surfanje na maksimum (koji je definiran sa MAX_SURFBOARD_SPEED):
SetSurfboardSpeed(gSurfboard);

IsPlayerAtSurfboard
Sa ovom funkcijom možete provjeriti da li je igrač blizu daske za surfanje.
@playerid = ID igrača.
@sbid = ID daske za surfanje.
vrati true ako je igrač blizu daske za surfanje i false ako nije.
Primjer:
if(IsPlayerAtSurfboard(playerid, gSurfboard)) printf("Igrač je blizu daske za surfanje sa ID-om %i.", gSurfboard);
else printf("Igrač NIJE blizu daske za surfanje sa ID-om %i.", gSurfboard);


IsPlayerAtAnySurfboard
Sa ovom funkcijom možete provjeriti da li je igrač blizu bilo koje daske za surfanje.
@playerid = ID igrača.
vrati ID daske za surfanje koji počinje sa 0 ako je igrač blizu bilo koje daske i -1 ako nije.
Primjer:
new
        gSurfboard = IsPlayerAtAnySurfboard(playerid);

if(gSurfboard != -1) printf("Igrač je blizu daske za surfanje sa ID-om %i.", gSurfboard);
else printf("Igrač nije blizu ni jedne daske za surfanje");



Defini:
#define MAX_SURFBOARDS (5)
#define MAX_SURFBOARD_SPEED (5.0)

MAX_SURFBOARDS - Maksimalni broj daski za surfanje koji dopušta skripti da ih stavi na server.
MAX_SURFBOARD_SPEED - Maksimalna brzina daske za surfanje. Ne bi smjela biti prevelika, jer inače ćete pasti sa daske za surfanje ako je brzina prevelika.


Kako dobiti kordinate za daske za surfanje?
Pokrenite server ili se konektajte na jedan i odiÄ'ite na poziciju gdje želite imati dasku za surfanje. Onda upotrijebite /save komandu i kad ste zavrÅ¡ili sa time onda otiÄ'ite u savedpositions.txt fajl i izvadite svoje kordinate (trebate samo x i y, najbolje je da stavite z kordinatu na 0.0 - level mora).
Stavite x rotaciju na 270.0 i y rotaciju na 0.0. Z rotacija je rotacija daske za surfanje.


Skini:



Ostalo:
Ako želite početi surfati, onda stanite pored daske za surfanje i koristite "/surf" komandu. Ako želite prestati sa surfanjem, onda koristite "/surf" komandu opet.

Koristite tipke sa strelicama (GORE, DOLE, LIJEVO i DESNO) da kontrolirate kretanje daske za surfanje.

Kad izbrišete zadnju dasku za surfanje sa servera onda će tajmer stati, tako da vi nemate nikakve brige i ne trebate ništa raditi. I kad opet dodate prvu dasku za surfanje na server, onda će se tajmer opet sam pokrenuti.

Ako padnete sa daske za surfanje, onda će se daska za surfanje automatsko re-spawnati. Isto tako će se automatsko respawnati ako daska za surfanje uleti u neki objekt (primjer - planina).



Nadam se da vam se sviÄ'a,
  Correlli
Poslednja Izmena: Novembar 05, 2010, 19:30:22 POSLE PODNE od Don Correlli

Lepo od tebe Correlli posto nadjes vremena i za BS pored tvog moda! 100/10



Odlicno odradjeno nema sta, ali malo je nerealno jer nema talasa, a ja nisam video da neko surf ovako na moru
Ipak tesko je napraviti i svaka ti cast 10/10

Sjuper-odlicno :D

Pa ti kad ovakve stvari objavljujes.... Sta ce tek na modu sve biti....  ??? Nesmem ni da zamislim :D
â"Œâˆ©â"(â—•_â—•)â"Œâˆ©â"

Respect to: (à¥"_à¥") - ČιѕÑ,σ яÑ"кяÑ"αÑ,ινησ - (à¥"_à¥") , [Saw]BloodMaster

â"Œâˆ©â"(â—£_â—¢)â"Œâˆ©â"

Dobra stvar :P Zanimljivo je ono kad se pokupiti tamo pa se jurite i tako :D

Correlli

Stavio sam novu verziju. Popravio sam jedan bug i dodao par novih funkcija (StopSurfboard, RespawnSurfboard, SetSurfboardSpeed) - više informacija u prvom postu.

Svaka cast! Svida mi se mozda stavim na svoj server!
Mysterious roleplay

Citat: â–º|Slick|Crack|â—,, poslato Novembar 05, 2010, 20:05:11 POSLE PODNE
Svaka cast! Svida mi se mozda stavim na svoj server!

Slazem se... Ali znas kakvih ljudi ima! Odma ce da kazu da ti je server prepun FilterScripti! Kako si sve skinuo na gotovo itd....   




â"Œâˆ©â"(â—•_â—•)â"Œâˆ©â"

Respect to: (à¥"_à¥") - ČιѕÑ,σ яÑ"кяÑ"αÑ,ινησ - (à¥"_à¥") , [Saw]BloodMaster

â"Œâˆ©â"(â—£_â—¢)â"Œâˆ©â"

ovo nije FS :D tako da ne mogu to da kazu xD

â"Œâˆ©â"(â—•_â—•)â"Œâˆ©â"

Respect to: (à¥"_à¥") - ČιѕÑ,σ яÑ"кяÑ"αÑ,ινησ - (à¥"_à¥") , [Saw]BloodMaster

â"Œâˆ©â"(â—£_â—¢)â"Œâˆ©â"

Correlli

Citat: Marjan_DeFox poslato Novembar 05, 2010, 20:11:16 POSLE PODNE
Odma ce da kazu da ti je server prepun FilterScripti! Kako si sve skinuo na gotovo itd....  

Pa zašto misliš da objavljujem ovdje skripte? Pa naravno da ih ljudi koriste. Pusti druge neka govore šta žele.
Poslednja Izmena: Novembar 05, 2010, 20:30:40 POSLE PODNE od Don Correlli

Lux je ovo tovja scripta?


Hahaha koj lik da je to njegova scripta hahahahahahahahahahahha!

Super je ovoo..... ;)
Poslednja Izmena: Novembar 06, 2010, 01:17:56 PRE PODNE od Marjan_DeFox
â"Œâˆ©â"(â—•_â—•)â"Œâˆ©â"

Respect to: (à¥"_à¥") - ČιѕÑ,σ яÑ"кяÑ"αÑ,ινησ - (à¥"_à¥") , [Saw]BloodMaster

â"Œâˆ©â"(â—£_â—¢)â"Œâˆ©â"