[SA-MP] [Scripting] Objekat Streameri
Results 1 to 1 of 1
  1. #1
    Senior Member Array
    Join Date
    Mar 2011
    Location
    Banja Luka
    Karma
    17

    Default [Scripting] Objekat Streameri

    Za neke koji jos ne znaju objekt streamere koristite da povecate broj objekata na serveru(ogranicenja sampa su izmedju 150 i 250 objekata), pa cu vam ovdje predstaviti nekoliko njih.

    Popis objekt streamera(YSI objekt streamer nije ukljucen jer se on nalazi u YSI inc):
    Midostreamer od MidoBana - url: http://forum.sa-mp.com/index.php?topic=62450.0
    Double-O-Objects od Double-O-Seven - url: http://forum.sa-mp.com/index.php?topic=93544.0
    BFX Object Streamer [inc] od BlackFox - url: http://forum.sa-mp.com/index.php?topic=103375.0

    MidoStreamer
    O streameru: Veoma dobar streamer, plus mu je velika brzina ucitavanja objekata, nikada nema problema da nekome od igraca prikaže objekte, ali ima jedan minus, a to je da nije dobar npr za stunt servere jer on nema ogranicenje kao neki streameri da ako ucita max objekata da ne ucitava dalje objekte, on nazalost nastavlja tako ako ucita vise od 200 objekata igracu(sve ovisi o tome ako na malom prostoru natrpate toliko objekata i stavite vecu vidljivost) i crasha igraca.
    Ovaj streamer preporučam za recimo rpg servere, jer niko nece praviti nenormalno puno objekata pa je ovaj streamer zadovoljavajuci. A jos jedna dobra stvar je ta sto je lagan za početnike.

    Setup: Skinite midostreamer, stavite ga u filterskripte u svoj server(u mapu i server.cfg), zatim otvorite sa pawnom taj midostream.pwn i podesite #define MAX_STREAM_OBJECTS maxbrojobjekata, preporucam da stvate recimo 2000 i kompajlirajte. Zatim u svoj gamemode stavite #include <MidoStream> i u public OnPlayerDisconnect(playerid,reason) stavite MidoStreamDisconnect(playerid); i kompajlirajte svoj gamemode. Objekte koje zelite streamati sa midostreamom preporucam da stavljate u odvojenu filtersktiptu npr nazovimo ju objekti.pwn i u njoj morate imati: #include <a_samp>, #include <MidoStream> i objekte stavljate u public OnFilterScriptInit(). Ne zaboravite pozvati i fs objekti.pwn u server.cfg(znaci to dodajte u liniju filtescripts). I to je to, sada mozete koristiti Midostream.

    Funkcije:
    Code:
    CreateStreamObject(modelid,Float:xpos,Float:ypos,Float:zpos,Float:xrot,Float:yrot,Float:zrot,Float:viewdist) - kreiranje streamanog objekta
    DestroyStreamObject(id) - unistava streamani objekt
    GetStreamObjectPos(id,&Float:xpos,&Float:ypos,&Float:zpos) - uzima poziciju streamanog objekta
    GetStreamObjectRot(id,&Float:xrot,&Float:yrot,&Float:zrot) - uzima rotaciju streamanog objekta
    SetStreamObjectPos(id,Float:xpos,Float:ypos,Float:zpos) - postavlja poziciju streamanog objekta 
    SetStreamObjectRot(id,Float:xrot,Float:yrot,Float:zrot) - postavlja rotaciju streamanog objekta
    AttachStreamObjectToPlayer(id,playerid,Float:xoff,Float:yoff,Float:zoff,Float:xrot,Float:yrot,Float:zrot) - stavlja streamani objekt na igraca(kaci)
    MoveStreamObject(id,Float:movx,Float:movy,Float:movz,Float:speed) - pomice streamani objekt
    MidoStreamDisconnect(playerid) - ide u OnPlayerDisconnect
    Plus: Brzo ucitavanje objekata igracima, lagan za setup, dobar za pocetnike
    Minus: Malo objekata na jednom podrucju(ne smije igracu ucitat vise od 200 objekata)

    Double-O-Objects

    O streameru: noviji streamer koji nije naisao na veci broj ljudi koji ga koriste, sto se tice bugova zasad nema poznatih. Dobra stvar ovdje je ta sto je napravljen kao include i jednostavan je za koristenje.

    Setup: u OnGameModeInit stavite DOO_OnGameModeInit(); zatim u OnPlayerConnect stavite DOO_OnPlayerConnect(playerid); i jos u OnPlayerDisconnect stavite DOO_OnPlayerDisconnect(playerid);

    Funkcije:
    Code:
    CreateStreamObject(modelid, Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ, Float:distance,worldid);//kreira objekt
    DestroyStreamObject(objectid);//unistava ga
    StreamObjects();//streama objekte
    StreamPlayerObjects(playerid,Float:x,Float:y,Float:z);//stream samo za odredjenog igraca
    MoveStreamObject(objectid,Float:x,Float:y,Float:z,Float:speed);//pomice objekt
    StopStreamObject(objectid);//zaustavlja kretanje objekta
    DOO_SetPlayerPos(playerid,Float:x,Float:y,Float:z);//ovo koristite umjesto setplayerpos
    DOO_SetVehiclePos(vehicleid,Float:x,Float:y,Float:z);//ovo koristite umjesto SetVehiclePos!!!
    SetStreamObjectRot(objectid, Float:rX, Float:rY, Float:rZ);//stavlja rotaciju ali ne radi na svim verzijam  SA-MP-a
    SetStreamObjectPos(objectid, Float:x, Float:y, Float:z);//stavlja poziciju objekta
    SetObjectViewDistance(objectid,Float:distance);//vidljivost objekta
    IsValidStreamObject(objectid);//provjerava dali je kreiran
    Plus: To sto je include, i dosta je jednostavan za setup
    Minus: To sto ga malo ljudi isprobalo pa nisam siguran dali radi sve dobro i dali ima bugova

    BFX Object Streamer

    O streameru: moram priznati da ga nisam testirao ali je tvorac toga napisao da podrzava do 20000 objekata, sto moram reci da sumnjam, ali neka mu bude. na linku od tog streamera se vidi da ga bas i nije nitko dozivio ozbiljno i da ga je mozda nekoliko ljudi probalo. Ukoliko ga netko testao neka napise komentar.

    Setup u OnPlayerDisConnect stavite b_PlayerDisconnect(playerid); zatim u OnGameModeExit stavite b_GameModeExit(); i u OnGameModeInit stavite b_GameModeInit();

    Funkcije:
    Code:
    b_CreateObject(modelid,x,y,z,rx,ry,rz,virtual world);
    b_LinkToVirtualWorld(objectid,Virtual World);
    b_MoveObject(objectid,destination_x,destination_y,destination_z,Speed);
    b_SetObjectRot(objectid,rx,ry,rz);
    b_SetObjectPos(objectid,x,y,z);
    b_DestroyObject(objectid);
    Plus: to sto je include
    Minus: nije dokazano da moze 20000 objekata, malo ga je ljudi probalo, premalo funkcija

    Credits: Djuro
    Last edited by k@lu^; 16-04-2012 at 11:17.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •