Would you like to react to this message? Create an account in a few clicks or log in to continue.

    [INC] RW Object Streamer v2

    avatar
    QWER
    Znalec


    Posts : 60
    Join date : 28.04.2011

    [INC] RW Object Streamer v2 Empty [INC] RW Object Streamer v2

    Odoslať pre QWER So apríl 30, 2011 9:41 pm

    Čaute, rád by som vám predstavil prácu členov RW Týmu.
    Nesie názov Object Streamer v2. Tento object streamer som začal robiť niakeho marca minulý rok (xx.03.2010). Len BlackJoker zo samp skončil a ja som skončil s projektom. Znova som z5, ešte lepší a vytrvalejší.

    Ako funguje ?
    Vačšina object streamerov funguje na princípe "IsPlayerRageOfPoint" čiže ak je blízko objektu, ukáže. Nevýhodou je že ak máte v móde 20 000 objektov tak kontroluje vašu pozíciu s 20 000 objektamy... čo dosť zaťažuje CPU...
    Tento streamer funguje na princípe "zón" (Atomas tu písal návod...). Ak máte v zóne 200 objektov tak nekontroluje či ste pri niakom z objektov, ale iba kontroluje či ste v zóne.

    Funckie
    kód:
    CreateObjectArea(id,Float:MinX, Float:MinY, Float:MaxX, Float:MaxY)
    id = id zóny npr. 5 a potom objekty dávate do zóny 5...
    MinX = Pozícia zóny X
    MinY = Pozícia zóny Y
    MaxX = Pozícia zóny X2
    MaxY = Pozícia zóny Y2
    (dáva sa do OnGameModeinit)

    kód:
    IsPlayerInObjectArea(playerid, areaid)
    playerid = hráčove id
    areaid = id areay, v našom prípade 5
    (využitie ? toto využije streamer, vy ani moc nie)

    kód:
    CreateStreamedObject(area,Ob,Float:xx,Float:yy,Float:zz,Float:rx,Float:ry,Float:rz)
    area = id zóny, v našom prípade 5
    ob = id objektu ja nwm npr. niaka dialnica
    xx = súradnice xx
    yy = súradnice yy
    zz = súradnice zz
    rx = rotácia x
    ry = rotácia y
    rz = rotácia z
    (dáva sa do OnGameModeInit)

    kód:
    OnPlayerConnectedObject(playerid)
    playerid = id hráča
    (dáva sa do OnPlayerConnect)

    kód:
    OnObjectGameModeInit()
    (dáva sa do OnGameModeInit, spustí 1 sekundový timer, čas si môžte zmeniť)

    Ukážkový script

    http://pastebin.com/DqpnEbYW

    Download INC

    pastebin = http://pastebin.com/sTAp3RQq
    http://solidfiles.com/d/1715b/

    Úspora

    Aj bez testov sa dá úspora pochopiť, predstavte si že máte 20 000 objektov v obyčajnom streamery. Každú sekundu by kontrolovalo vašu pozíciu s 20 000 objektamy...
    A na druhú stranu predstavte si že máte 100 zón po 200 objektov. Miesto 20 000 pozícii by kontrolovalo iba 100...

    S Pozdravom
    QWER

      Práve je Št apríl 18, 2024 4:57 pm