So, habe nun das ganze mithilfe von blackfisch 's Antwort angepasst.
Danke an alle!
Schön, dass du den Weg zu NodeZone.net gefunden hast! Aktuell bist du nicht angemeldet und kannst deshalb nur eingeschränkt auf unsere Community zugreifen. Um alle Funktionen freizuschalten, spannende Inhalte zu entdecken und dich aktiv einzubringen, registriere dich jetzt kostenlos oder melde dich mit deinem Account an.
So, habe nun das ganze mithilfe von blackfisch 's Antwort angepasst.
Danke an alle!
Vielen Dank für die Antworten.
Ich glaube ich habe mich etwas unschicklich ausgedrückt...
Ich meine natürlich die z-Inventargröße
Ich habe schon einige Script gesehen, mit denen man die Capacity einfach anpassen kann...
Also ohne dir Rechnung durch 4.
Existiert ein solches Script für die (Vanilla!) 5.x?
Du bist lustig...
Ich würde nicht allen Ernstes nach einem Script suchen, sollten die Plätze ganz einfach in einer Config ändernbar sein
Hey^^
Ich suche momentan ein Script, mit welchem ich die Rucksackplätze einstellen kann, in der x5.
Habe schon einiges eingebunden (aus früheren Versionen), leider ohne Erfolg.
Kann mich eventuell jemand auf ein Tutorial oder Ähnliches verweisen?
Vielen Dank im Vorraus^^
Keine, das ist ja das Verrückte an der Sache - jedoch habe ich es jetzt ganz einfach gelöst.
Auch nochmal an alle die etwas mit einer nicht existenten "osefStatusBar" im Script stehen haben oder ein ähnliches Problem haben sollten:
Ganz einfach die "fn_repairTruck.sqf" aus dem aktuellen GitHub Repository rauskopieren. Sofern man nix wichtiges, das nicht im Standardscript enthalten ist eingebunden hatte. Mit folgendem Code funktioniert alles wunderbar:
#include "..\..\script_macros.hpp"
/*
File: fn_repairTruck.sqf
Author: Bryan "Tonic" Boardwine
Description:
Main functionality for toolkits, to be revised in later version.
*/
private ["_veh","_upp","_ui","_progress","_pgText","_cP","_displayName","_test","_sideRepairArray"];
_veh = cursorObject;
life_interrupted = false;
if (isNull _veh) exitWith {};
if ((_veh isKindOf "Car") || (_veh isKindOf "Ship") || (_veh isKindOf "Air")) then {
if (life_inv_toolkit > 0) then {
life_action_inUse = true;
_displayName = FETCH_CONFIG2(getText,"CfgVehicles",(typeOf _veh),"displayName");
_upp = format [localize "STR_NOTF_Repairing",_displayName];
//Setup our progress bar.
disableSerialization;
"progressBar" cutRsc ["life_progress","PLAIN"];
_ui = uiNamespace getVariable "life_progress";
_progress = _ui displayCtrl 38201;
_pgText = _ui displayCtrl 38202;
_pgText ctrlSetText format ["%2 (1%1)...","%",_upp];
_progress progressSetPosition 0.01;
_cP = 0.01;
for "_i" from 0 to 1 step 0 do {
if (animationState player != "AinvPknlMstpSnonWnonDnon_medic_1") then {
[player,"AinvPknlMstpSnonWnonDnon_medic_1",true] remoteExecCall ["life_fnc_animSync",RCLIENT];
player switchMove "AinvPknlMstpSnonWnonDnon_medic_1";
player playMoveNow "AinvPknlMstpSnonWnonDnon_medic_1";
};
uiSleep 0.27;
_cP = _cP + 0.01;
_progress progressSetPosition _cP;
_pgText ctrlSetText format ["%3 (%1%2)...",round(_cP * 100),"%",_upp];
if (_cP >= 1) exitWith {};
if (!alive player) exitWith {};
if !(isNull objectParent player) exitWith {};
if (life_interrupted) exitWith {};
};
life_action_inUse = false;
"progressBar" cutText ["","PLAIN"];
player playActionNow "stop";
if (life_interrupted) exitWith {life_interrupted = false; titleText[localize "STR_NOTF_ActionCancel","PLAIN"]; life_action_inUse = false;};
if !(isNull objectParent player) exitWith {titleText[localize "STR_NOTF_ActionInVehicle","PLAIN"];};
_sideRepairArray = LIFE_SETTINGS(getArray,"vehicle_infiniteRepair");
//Check if playerSide has infinite repair enabled
if (playerSide isEqualTo civilian && (_sideRepairArray select 0) isEqualTo 0) then {
[false,"toolkit",1] call life_fnc_handleInv;
};
if (playerSide isEqualTo west && (_sideRepairArray select 1) isEqualTo 0) then {
[false,"toolkit",1] call life_fnc_handleInv;
};
if (playerSide isEqualTo independent && (_sideRepairArray select 2) isEqualTo 0) then {
[false,"toolkit",1] call life_fnc_handleInv;
};
if (playerSide isEqualTo east && (_sideRepairArray select 3) isEqualTo 0) then {
[false,"toolkit",1] call life_fnc_handleInv;
};
_veh setDamage 0;
titleText[localize "STR_NOTF_RepairedVehicle","PLAIN"];
};
};
Alles anzeigen
Natürlich hier und da eine Zeile abändern wenn man beispielsweise die Toolkits im i-Inventar eingebunden hat.
Nochmals danke für deine Hilfsbereitschaft Kuchenplatte
Habe keine Statusbar dafür eingebunden
Habe mich schon gewundert, weswegen "osefStatusBar" überall und ausschließlich in der Repair Truck eingetragen ist...
kann man das einfach so entfernen?
Hey^^
Kleines Anliegen:
Nach Reperatur eines Fahrzeuges erscheint folgende Fehlermeldung:
Resource title osefStatusBar not found
Meine "fn_repairTruck.sqf":
#include "..\..\script_macros.hpp"
/*
File: fn_repairTruck.sqf
Author: Bryan "Tonic" Boardwine
Description:
Main functionality for toolkits, to be revised in later version.
*/
private["_veh","_upp","_ui","_progress","_pgText","_cP","_displayName"];
_veh = cursorTarget;
life_interrupted = false;
if(isNull _veh) exitwith {};
if((_veh isKindOf "Car") OR (_veh isKindOf "Ship") OR (_veh isKindOf "Air")) then
{
if("ToolKit" in (items player)) then
{
life_action_inUse = true;
_displayName = getText(configFile >> "CfgVehicles" >> (typeOf _veh) >> "displayName");
_upp = format["Repariere %1",_displayName];
//Setup our progress bar.
disableSerialization;
5 cutRsc ["life_progress","PLAIN"];
_ui = uiNameSpace getVariable "life_progress";
_progress = _ui displayCtrl 38201;
_pgText = _ui displayCtrl 38202;
_pgText ctrlSetText format["%2 (1%1)...","%",_upp];
_progress progressSetPosition 0.01;
_cP = 0.01;
while{true} do
{
if(animationState player != "AinvPknlMstpSnonWnonDnon_medic4") then {
[[player,"AinvPknlMstpSnonWnonDnon_medic4"],"life_fnc_animSync",true,false] spawn life_fnc_MP;
player playMoveNow "AinvPknlMstpSnonWnonDnon_medic4";
};
uiSleep 0.27;
_cP = _cP + 0.01;
_progress progressSetPosition _cP;
_pgText ctrlSetText format["%3 (%1%2)...",round(_cP * 100),"%",_upp];
if(_cP >= 1) exitWith {_ui = "osefStatusBar" call BIS_fnc_rscLayer;_ui cutRsc["osefStatusBar","PLAIN"];};
if(!alive player) exitWith {_ui = "osefStatusBar" call BIS_fnc_rscLayer;_ui cutRsc["osefStatusBar","PLAIN"];};
if(player != vehicle player) exitWith {_ui = "osefStatusBar" call BIS_fnc_rscLayer;_ui cutRsc["osefStatusBar","PLAIN"];};
if(life_interrupted) exitWith {_ui = "osefStatusBar" call BIS_fnc_rscLayer;_ui cutRsc["osefStatusBar","PLAIN"];};
};
life_action_inUse = false;
5 cutText ["","PLAIN"];
player playActionNow "stop";
if(life_interrupted) exitWith {life_interrupted = false; titleText["Action cancelled","PLAIN"]; life_action_inUse = false;_ui = "osefStatusBar" call BIS_fnc_rscLayer;_ui cutRsc["osefStatusBar","PLAIN"];};
if(player != vehicle player) exitWith {titleText["Raus aus dem Fahrzeug! Du versuchst gerade einen Bug auszunutzen. Pfui!.","PLAIN"];_ui = "osefStatusBar" call BIS_fnc_rscLayer;_ui cutRsc["osefStatusBar","PLAIN"];};
_veh setDamage 0;
player removeItem "ToolKit";
titleText["Du hast das Fahrzeug erfolgreich repariert.","PLAIN"];
};
};
Alles anzeigen
Das Fahrzeug wird ordnungsgemäß repariert und das Toolkit aus dem Inventar entfernt.
Fehlermeldung stört nur ein wenig
Vielleicht findet ja jemand die Ursache
Vielen Dank im Vorraus^^
Danke für eure Zeit, Blyatkovicz hat mir das ganze über TeamViewer freundlicherweise behoben und mir ein paar Tipps gegeben.
Die "agb.hpp" war schlichtweg mehrmals #included daher die Fehlermeldung.
Danke erstmal für deine Hilfsbereitschaft, aber welche Daten möchtest du denn konkret?
Der erste Lösungsansatz war ja Notepad++
Alles abgeändert, Fehler wir aber immer noch angezeigt. Jetzt halt anstatt .jpg mit .paa
So, hatte das ganze jetzt mal ausprobiert.
Funktioniert leider immer noch nicht, Fehlermeldung wird angezeigt wobei die Textur trotzdem geladen wird (siehe Screenshot)
Habe auch mal überprüft, wo die "agb.hpp" denn überall erwähnt wird.
Vielleicht hilft dieser Eintrag in der "fn_initCiv.sqf" weiter.
diag_log "::Life Client:: Creating AGB Dialog";
// AGB
rulesok = false;
if(!createDialog "agbSecond") exitWith {};
waitUntil{!isNull (findDisplay 32154)}; //Wait for the spawn selection to be open.
waitUntil{isNull (findDisplay 32154)}; //Wait for the spawn selection to be done.
if(!rulesok)then {
player enableSimulation false;
["agb",false,true] call BIS_fnc_endMission;
sleep 35;
};
rulesok = nil;
Alles anzeigen
Die Zeile "["agb",false,true] call BIS_fnc_endMission;" hatte ich in ["agbSecond",false,true] call BIS_fnc_endMission; umgeschrieben, leider ebenfalls ohne Erfolg.
Habe noch zusätzlich Client- und Serverlogs angehängt
Danke für deine Antwort.
.jpg hatte ich schon zu .paa umgewandelt, jedoch ohne Erfolg. Bei allem anderen Dateien/Skins funktioniert es ja scheinbar
Werde es trotzdem gleich mal testen und eine Rückmeldung geben.
Der Dialog heisst ja deswegen auch agbSecond
Hatte schonmal einen Thread eröffnet (vor einigen Monaten) jedoch konnte mir damals niemand weiterhelfen.
Alles klar, agb.hpp ist angehängt (als .txt)
Hey^^
Ich habe heute das Marktsystem von Black Lagoon eingebunden und konfiguriert.
Nur leider verstehe ich die beiden letzten Einträge pro Item nicht, ich glaube ich bin einfach zu blöd dafür
Meine "fn_marketconfiguration.sqf" schaut folgendermaßen aus:
/*
Main configuration for non-persistent market system
Will need triggers to hook into vanilla pricing methods
*/
//Schema: SHORTNAME, Default, Min, Max, changes in action, [Sales multiplied by 1, Purchase multiplied by -1]
//["gold", 1500, 450, 2300, 8, 5],
////////////MAIN CONFIG
life_market_resources = [
// Default İsler
["iron_refined", 1100, 350, 3200, 3, 5,
[
["gummi",1]
]
],
["gummi", 1650, 850, 2900, 3, 5,
[
["iron_refined",1]
]
],
["whiskey", 2750, 1200, 4680, 3, 5,
[
["kaffee",1],
["cannabis",1]
]
],
["kaffee", 2500, 950, 4800, 3, 5,
[
["whiskey",1],
["cannabis",1]
]
],
["sweetsP", 1350, 500, 2900, 3, 5,
[
["kaffee",1],
["whiskey",1]
]
],
["cannabis", 800, 420, 2000, 3, 5,
[
["whiskey",1],
["kaffee",1]
]
],
["marijuana", 4500, 2750, 6250, 3, 5,
[
["cocaine_processed",1],
["lsd",1]
]
],
["cocaine_processed", 6250, 2800, 8500, 3, 5,
[
["marijuana",1],
["lsd",1],
["kaffee",1]
]
],
["lsd", 5800, 3600, 7500, 3, 5,
[
["marijuana",1],
["whiskey",1],
["cocaine_processed",1],
["sweetsP",1]
]
],
["goldbar", 95000, 65000, 120000, 10, 5,
[
["cocaine_processed",1]
]
]
];
publicVariable "life_market_resources";
////////////GENERATED CONFIG
//life_market_changes = []; //[SHORTNAME,SELL,BUY]
life_market_shortnames = []; //shortnames if in market
//life_market_clampprices = []; //[SHORTNAME,MIN,MAX]
{
life_market_shortnames set [count life_market_shortnames, _x select 0];
//life_market_clampprices set [count life_market_clampprices, [_x select 0, _x select 2, _x select 3] ];
//life_market_changes set [count life_market_changes, [_x select 0, _x select 4, _x select 5] ];
}
foreach life_market_resources;
publicVariable "life_market_shortnames";
//publicVariable "life_market_clampprices";
////////////SYNC PRICES WITH SERVER IF EMPTY
//if(isNil("life_market_prices")) then
//{
life_market_prices = []; //[SHORTNAME,CURRENTPRICE,DIRECTIONGLOBAL,DIRECTIONLOCAL]
{
life_market_prices set [count life_market_prices, [_x select 0, _x select 1, 0, 0] ];
}
foreach life_market_resources;
publicVariable "life_market_prices";
systemChat "Börsenpreise generiert!";
//};
Alles anzeigen
Man sollte ja meinen, dass das ganze selbsterklärend ist.
Soweit ist auch alles klar, jedoch verstehe ich die elementaren Einträge (die letzten beiden) sprich ["whiskey", 2750, 1200, 4680, 3, 5,nicht.
Wofür steht das denn jetzt genau?
Die Erklärung changes in action, [Sales multiplied by 1, Purchase multiplied by -1]hilft da dementsprechend nicht wirklich weiter.
Kann mir da vlt. jemand helfen?
Hey^^
Ich habe folgendes Problem im Prinzip schon seit ich diese Missionsfiles bearbeite
Irrtümlicherweise erhält jeder Spieler in der Rollenzuweisung (also kurz nach Serverbeitritt) ein bis zwei Fehlermeldungen.
In erster Linie sind diese nicht korrekt bzw. die Fehler stehen nur im Protokoll, aber im Endeffekt haben diese keine Auswirkungen.
Die Fehlermeldungen lauten wie folgt:
File mpmissions\__CUR_MP.Tanoa\dialog\agb.hpp, line 85: .agbSecond: Member already defined
Picture textures\cop_uniform.jpg not found
Screenshot nur von einer Fehlermeldung da diese nach Lust und Laune auftauchen.
Hier die entsprechenden Logzeilen:
2018/09/11, 15:58:51 Warning Message: File mpmissions\Tanoa_Life.Tanoa\dialog\agb.hpp, line 85: .agbSecond: Member already defined.
Server- und Clientlog zusätzlich angehängt.
Und hier noch die entsprechende Datei und der Dateipfad der "cop_uniform.jpg":
class agbSecond
{
idd = 32154;
name = "agb";
movingEnable = false;
enableSimulation = false;
class controlsBackground
{
class RscTitleBackground : Life_RscText
{
colorBackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843])", "(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019])", "(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862])", "(profilenamespace getvariable ['GUI_BCG_RGB_A',0.7])"};
idc = -1;
x = 0.0875;
y = 0.06;
w = 0.825;
h = 0.04;
};
class RscBackground : Life_RscText
{
colorBackground[] = {0.31,0.31,0.31,1};
idc = -1;
x = 0.0875;
y = 0.12;
w = 0.825;
h = 0.82;
};
class RscTitleText : Life_RscTitle
{
colorBackground[] = {0, 0, 0, 0};
idc = -1;
text = "Auszug aus dem Regelwerk:";
x = 0.0875;
y = 0.06;
w = 0.825;
h = 0.04;
class Attributes
{
align = "center";
};
};
class RsclolStatus : Life_RscStructuredText
{
idc = -1;
colorBackground[] = {0, 0, 0, 0};
sizeEx = 0.0001;
text = "<t size = '0.8'>Folgendes ist ohne Ausnahmen zu beachten<br / >§1 Cheating und Bug-Using ist strengstens untersagt und wird mit einem Bann bestraft<br / >§2 Aussagen, die beleidigende, diskriminierende (Sexismus, Rassismus, Anti-Semitismus) oder poltische Inhalte enthalten, sind zu unterlassen<br / >§3 Combat-Logging (Ausloggen während des Rollenspiels) wird mit einem permanenten Bann geahndet<br / >§4 Jegliche Interaktion mit anderen Spielern muss im Rollenspiel stattfinden. Beispiel: Diebstahl, physische Gewalt, Handel etc.<br / ><br / >Das vollständige Regelwerk ist im Forum einzusehen.<br / ></t> <t font ='PuristaBold' size='0.9'>Um auf unserem Server zu spielen, musst du das Regelwerk lesen und akzeptieren.</t>";
x = 0.1125;
y = 0.16;
w = 0.775;
h = 0.66;
};
};
class Controls
{
class naz : Life_RscButtonMenu
{
idc = -1;
text = "Ablehnen";
colorBackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843])", "(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019])", "(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862])", "(profilenamespace getvariable ['GUI_BCG_RGB_A',0.7])"};
onButtonClick = "closeDialog 0;";
x = 0.1075;
y = 0.88;
w = 0.3;
h = 0.04;
class Attributes
{
align = "center";
};
};
class az : Life_RscButtonMenu
{
idc = -1;
text = "Akzeptieren";
colorBackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843])", "(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019])", "(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862])", "(profilenamespace getvariable ['GUI_BCG_RGB_A',0.7])"};
onButtonClick = "rulesok = true; closeDialog 0;";
x = 0.5825;
y = 0.88;
w = 0.3;
h = 0.04;
class Attributes
{
align = "center";
};
};
};
};
Alles anzeigen
Dateipfad ist Tanoa_Life.Tanoa\textures\cop_uniform.jpg
Generell ist das ja kein Problem, da es nichts beeinflusst, jedoch nervt es nach einer Zeit und macht natürlich bei neuen Spieler nicht wirklich einen positiven Eindruck
Mhm...
Wäre auf jeden Fall einen Versuch wert!
Hab in der Hinsicht nicht gerade viel Erfahrung aber mal gucken was sich machen lässt, danke für den Tipp
Das habe ich bereits getestet, ist aber einerseits für die Version 4.4 und andererseits treten dort obengenannte Probleme auf.
Ich glaube ich mach mich einfach mal drauf und dran, selber was zusammen zu basteln
Hey^^
Ich wollte ein kleines Sitzscript einbinden, soweit funktioniert auch alles, bis auf das Wesentliche - das Setzen
Ich habe einiges geschraubt und gedreht, nur leider gibt's immer einen Haken.
Entweder portet es den Spieler auf den Stuhl und lässt ihn stehen, die addAction Aufstehen stackt sich 5x Mal und verschwindet nicht oder Sonstiges...
Habe schon mehrere Scripts (unter anderem aus diesem Forum) getestet, will aber alles nicht so wie es soll.
Am optimalsten wäre ein Script, dass auf jeden Stuhl in der Mission die addAction "Hinsetzen" hinzufügt, danach entfernt und die addAction "Aufstehen" hinzufügt.
Der Spieler sollte natürlich auch eine dementsprechende sitzende Pose einnehmen.
Vielleicht kennt der ein oder andere ja ein ganz fehlerfreies und nützliches Script
Danke im Vorraus!
Alles klar, danke