Einzelnen Beitrag anzeigen
Alt 15.12.2010, 16:55   #1 (permalink)
BTK
Newbie
 
Benutzerbild von BTK
 
Registriert seit: 11.06.2008
Ort: Flensburg
Alter: 37
Beiträge: 36
Standard Module syncron halten

Moin,

wie ihr wisst, lösen sich syncronisierungen im Multiplayer beim sterben/respawn auf.

Hab jetzt aktuell mit dem CoIn rumgespielt um das dauerhaft, also auch nach respawn, nutzbar zu machen... Bezieht sich aber auch auf die anderen Module. (UAV zB)


Hier, das hab ich bis jetzt geschrieben... (Sinmaster1 ist hier der commander mit Zugriff aufs CoIn)

Code:
//// Local for the commander only
if (!(local player) || (isNil "Sinmaster1")) exitWith {};
if (player != Sinmaster1) exitWith {};

//// Money
if (isNil "COIN1Money") then { COIN1Money = 50000; publicVariable "COIN1Money"; };

//// Keep it running
while {true} do {

    //// Wait until alive
    waitUntil {alive Sinmaster1};
    
    //// Create and set up
    COIN1Group = createGroup west;  
    "ConstructionManager" createUnit [(getPos COIN1Pos), COIN1Group, "COIN1Module = this;"];
    //COIN1Module setVariable ["BIS_COIN_name","No_Name"];
    COIN1Module setVariable ["BIS_COIN_areasize",[60,20]];
    COIN1Module setVariable ["BIS_COIN_funds","COINMoney"];
    COIN1Module setVariable ["BIS_COIN_onPurchase",{ hint "Constructing, please wait..."; sleep 10 + (random 10); }];
    COIN1Module setVariable ["BIS_COIN_onconstruct",{ hint "Constructed."; }];
    COIN1Module setVariable ["BIS_COIN_actionCondition","(Sinmaster1 distance COIN1Pos < 1000)"];

    //// Categories and items
    COIN1Module setVariable ["BIS_COIN_categories",["Static weapons","Vehicles"]];
    COIN1Module setvariable ["BIS_COIN_items",
        [
            ["M2StaticMG_US_EP1","Static weapons",200],
            ["M2HD_mini_TriPod_US_EP1","Static weapons",200],
            ["Stinger_Pod_US_EP1","Static weapons",500],
            ["HMMWV_Ambulance_DES_EP1","Vehicles",200]
        ]
    ];

    //// Syncronize
    COIN1Module synchronizeObjectsAdd [Sinmaster1];
    
    //// Wait until dead
    waitUntil {!alive Sinmaster1};
    
    //// Clean up
    deleteVehicle COIN1Module; 
    deleteGroup COIN1Group;
    sleep 10;
};
Funktioniert soweit im Editor. Im (dedicated) multiplayer allerdings garnicht, wird also nicht mal beim Spielstart initalisiert.

Hat jemand erfahrungen damit? ... mit Modulen syncron halten ...

Hab ich hier'n denkfehler?

Hab übrigens auch schon versucht das ganze umzudrehen und nur auf dem Server zu erstellen etc. == gleiches Ergebnis.
__________________


Geändert von BTK (15.12.2010 um 17:04 Uhr).
BTK ist offline