Jump to content

quantenfrik

Member
  • Content Count

    37
  • Joined

  • Last visited

  • Medals

  • Medals

Posts posted by quantenfrik


  1. As I searched further, I came accross another idea: My problem could also be about inheriting and referencing. I came to this like this: I modified the code to this

    class CfgPatches 
    { 
       class fixed_scorcher 
       { 
           units[] = {B_MBT_01_arty_F}; 
           weapons[] = {}; 
           requiredVersion = 0.1; 
           requiredAddons[] = {"A3_Armor_F"}; 
       }; 
    }; 
    
    //class B_MBT_01_arty_F;
    class Turrets;
    class MainTurret;
    class AnimationSources;
    //class muzzle_rot_cannon;
    //class elevation;
    //class MainGun;
    //class lead;
    
    class CfgVehicles
    {
    
    class B_MBT_01_arty_F;
    class B_MBT_01_arty_F2: B_MBT_01_arty_F 
    {
    	displayName = "nananana";
    	artilleryScanner = 0;
    
    	class AnimationSources: AnimationSources
    	{
    
    		/*class MainTurret 
    		{
    			type="::";
    			source="::";
    			memory = ::;//by default
    			animPeriod = ::;//Unknown
    			selection="::";
    			axis="::";//*possibly*
    			minValue = -::;//rad -360.0
    			maxValue = ::;//rad 360.0
    			minPhase = ::;//rad -360.0
    			maxPhase = ::;//rad 360.0
    			angle0 = ::;//rad 0.0;
    			angle1 = ::;//rad 0.0;				
    		};
    
    		class MainGun
    		{
    			type="::";
    			source="::";
    			memory = ::;//by default
    			animPeriod = ::;//Unknown
    			selection="::";
    			axis="::";//*possibly*
    			minValue = -::;//rad -360.0
    			maxValue = ::;//rad 360.0
    			minPhase = ::;//rad -360.0
    			maxPhase = ::;//rad 360.0
    			angle0 = ::;//rad 0.0;
    			angle1 = ::;//rad 0.0;	
    		};*/
    
    		class MainTurret2
    		{
    			type="rotationY";
    			source="user";
    			memory = 1;//by default
    			animPeriod = 6;//Unknown
    			selection="otocvez";
    			axis="otocvez_axis";//*possibly*
    			minValue = -6.2831855;//rad -360.0
    			maxValue = 6.2831855;//rad 360.0
    			minPhase = -6.2831855;//rad -360.0
    			maxPhase = 6.2831855;//rad 360.0
    			angle0 = 0.0;//rad 0.0;
    			angle1 = 0.0;//rad 0.0;
    
    		};		
    
    
    		class MainGun2
    		{
    			type="rotationX";
    			source="user";
    			memory = 1;//by default
    			animPeriod = 6;//Unknown
    			selection="otochlaven";
    			axis="otochlaven_axis";//*possibly*
    			minValue = -6.2831855;//rad -360.0
    			maxValue = 6.2831855;//rad 360.0
    			minPhase = -6.2831855;//rad -360.0
    			maxPhase = 6.2831855;//rad 360.0
    			angle0 = 0.0;//rad 0.0;
    			angle1 = 0.0;//rad 0.0;
    		};
    
    
    
    
    
    		/*class elevation
    		{	
    			source = "user";
    			animperiod = 6;
    
    		};*/
    
    	/*	class lead
    		{
    			source = "::user";
    			animperiod = ::6;
    
    		};	*/	
    	};	
    
    	class Turrets: Turrets
    	{
    
    		class MainTurret: MainTurret 
    		{
    
    			body = "MainTurret2";
    			gun = "MainGun2";
    			animationSourceBody = "MainTurret2";
    			animationSourceGun = "MainGun2";
    			//turretInfoType = "RscOptics_MBT_01_commander";
    			//gunnerOpticsModel = "\A3\weapons_f\reticle\Optics_Gunner_02_F";
    			elevationMode = 3;
    
    		};
    	};
    };	
    };

    which doesn't work as it should, but provided some interesting finds: I basicly redefined the animations for the gun (I also tried to overwrite the original animations, hence all the colons but in this version they are not active) with MainTurret2 and MainGun2, however, ingame I was still able to animate the Turret and Gun with _Tank animate ["MainGun", 0.5]; So it still took the animations from the model.cfg, but somehow made the source to user, as I could animate them (although it was only visual, like described in my post above). But this brought me to the thought that he would not replace the animations because class Turrets; class MainTurret; and class AnimationSources; are defined outside cfgvehicles. I tried to define them then inside cfgvehicles but came to the following problem: I cannot reference them like B_MBT_01_arty_F, of which I basicly created a new instance. When I make something like this:

    		class AnimationSources;
    	class AnimationSources: AnimationSources

    , I get the member already defined error when starting the game. I also tried a setup found in here http://www.ofpec.com/forum/index.php?topic=31815.0 :

    	class B_MBT_01_arty_F{};
    	class AnimationSources: B_MBT_01_arty_F{};
    	class Turrets: B_MBT_01_arty_F{};
    	class MainTurret: Turrets{};

    and also this, which looks like the beginning of the config.cpp of vehicles:

    	class B_MBT_01_arty_F{
    	class AnimationSources: B_MBT_01_arty_F{};
    	class Turrets: B_MBT_01_arty_F{
    		class MainTurret: Turrets{};			
    	};
    };
    

    But neither of them work like they should, what I think they do is only take the parts I specially defined (those I want to change), so I can't inherit later B_MBT_01_arty_F2 from B_MBT_01_arty_F, because everything else is missing (icon, vehicleclass etc). Anybody who knows a way to solve this?

    Also this isn't really a mission editing question anymore, so I guess this could be moved to addons and scripting, but I don't really know how this is handled...


  2. Thanks a lot! It looks really nice already! I also experienced the strange shooting behaviour, but unfortunately it was not caused by the artillery computer, I switched it off like you suggested and it didn't change much. I now spent some hours on trying all the different possibilities to make the gun not only point but also shoot in the right direction, but I haven't gotten anywhere, although I must have tried at least 50 variations. What I also don't understand is how it is still possible to move the gun at all after gun, body, animationsourcebody and turret have been erased.

    I tried to overwrite the source of mainTurret and mainGun as described here https://community.bistudio.com/wiki/Model_Config but with no result.

    What also came to my mind was changing the turretInfoType, because I thought there was some kind of connection between this and the gun, but this only screwed up the optics.

    I have also noticed that it is still possible to lay the gun with pgup/pgdown, this won't change the visual direction of the barrel but this will determine the direction in which the shell is shot, also the elv number in the hud will change. Maybe there is another animation defined in the model.cfg, is there anyway to access it?

    The AI also completey ignores the laying of the gun, it will shoot, even if the direction is horizontally changed, to the front at a low angle (~1°), even if it's like set to 10°. The player shoots in the horizontal direction if (that is really strange, but maybe i observed it incorrecty) the point the optics are pointing to is in range of a high firing solution, otherwise he will also shoot straight up front too.

    weaponDirection will return a value independent from these, so there are 3 different elevation values in total :S.


  3. Thank you very much! But I still could use some help to get it working, because my knowledge and understanding of configs and inheritance is still very limited. I'm trying to get this working on the Scorcher, so I won't be able to access the model.cfg, if I understand correctly; I read it's somehow "baked" into the p3d. But not being able to use the gun in direct fire would be an acceptable trade off in my opinion, because the Scorcher still has the HMG/GMG turret and the cannon is at the moment useless anyways for engaging targets in sight, until a FCS is implemented. But I can't get this to work. I use this code:

    class CfgPatches 
    { 
       class fixed_scorcher 
       { 
           units[] = {B_MBT_01_arty_F}; 
           weapons[] = {}; 
           requiredVersion = 0.1; 
           requiredAddons[] = {"A3_Armor_F"}; 
       }; 
    }; 
    
    class B_MBT_01_arty_F;
    class Turrets;
    class MainTurret;
    class AnimationSources;
    class muzzle_rot_cannon;
    
    class CfgVehicles {
    
    class B_MBT_01_arty_F;
    class B_MBT_01_arty_F2: B_MBT_01_arty_F {
    
    	class Turrets: Turrets {
    
    		class MainTurret: MainTurret {
    
    			body = "";
    			gun = "";
    		};
    	};
    
    	class AnimationSources: AnimationSources {
    
    		class muzzle_rot_cannon: muzzle_rot_cannon {
    			source = "user";
    			animperiod = 16;
    
    		};
    	};		
    };
    };
    

    I pbo it with binPBO and it doesn't give me any errors in the log file.

    It creates a second instance of the Scorcher (B_MBT_01_arty_F2), but I am still able to move the gun manually and can't animate it. Reyhard, I hope I implemented what you said correctly (leaving blank, or better said erasing, body and gun), but as I tried to create a class MainTurret under AnimationSources, it gave me the "member already defined" error, I think because it's already the name the of the turret, so I tried muzzle_rot_cannon, with no success. Am I overlooking something completely obvious or is my entire approach messed up (you didn't mention creating a new addon, but I could think of no other way to change the config entries)?


  4. unfortunately it's not that easy (range tables) with the self propelled artillery due to two reasons: 1. the turret is not completely horizontal, if you aim to the front and it says 10° in reality you shoot at 11,6 degrees, same if you shoot to the back, it's around 8,4. degrees. 2. although the gun itsself is stabilized, the elevation number is not, which means if you face an hill upward and set your gun to 10° degrees you will get a different angle than if you face a hill downwards. there is also another absurdity i discovered: because the gun is stabilized, the shell is shot in the direction you look (and not the weapon direction), this is negligible at normal situations but produces some interesting outputs when you place a concrete ramp in the editor and drive with one track on it, you can actually see the shell leaving the barrel at a different angle than the one it is pointing at.

    To get the real elevation of the gun you can use this code

    _somevariable = vehicle player weaponDirection (currentWeapon vehicle player);
    _n = 3;
    _var1 = (_somevariable select 0);
    _var2 = (_somevariable select 1);
    _var3 = (_somevariable select 2);
    _flach = sqrt (_var2*_var2 + _var1*_var1);
    _angle = atan (_var3/_flach);
    _anglerounded = round (_angle * (10 ^ _n))/(10 ^ _n);
    hint format ["%1", _anglerounded];

    But basicly because of this (and the lack of low angle fire solutions and MRSI) I decided to learn scripting and write some workarounds, but currently I am stuck at animating the barrel :/


  5. I've searched further, but still found no solutions, only new questions, which maybe someone can answer: I had a look into the config viewer, and for the Scorcher there are some "Animation Sources", called "muzzle_hide_arty", "muzzle_rot_cannon" and similar. does anybody have an idea what these do? I tried animationPhase on them but they always returned zero, and strangely it will also return zero if the animation doesn't exist at all :S. I also had a look at the awesome m109a6 paladin mod for arma 2 (which I hope is allowed, but I think so because the files are publicly available, right?), and found that they used animate to lay the gun, just as I plan to do too. However, their code works...I found the following in the lay script:

    _m109 animate ["turret", _deflectionNeeded];
    

    and

    _m109 animate ["gun", (_elevationNeeded min 1333)];
    

    .

    I can find no difference to my code; "turret" and "gun" are defined in the AnimationSources as classes, the corresponding entries for the scorcher are "muzzle_hide_arty", "muzzle_rot_cannon" etc. If anyone has an idea why my code doesn't work, please post it.

    Another approach I had in mind was to "analyze" the scripting commands. I thought in dowatch (which works, but takes too much time) there has to be a part that changes the gun direction, so if I could see the whole code of it, I might be able to understand how it works.


  6. Thanks for the reply! But after some further research, I think it might be possible that vehicles have indeed animations, because they're defined in the model.cfg, and I can also access them ingame via animationphase.

    _Tank = vehicle player;
    _angle = (_Tank AnimationPhase "mainturret");
    hint str _angle;
    

    this works without problems, giving me (I think) an angle in radians. However when I run this code

    _Tank = vehicle player;
    _Tank animate ["mainTurret", 0.5];

    nothing happens. Also this code

    _Tank = vehicle player;
    _state = animationState _Tank;
    hint str _state;
    

    just returns an empty string when I'm in a vehicle (which would be an indicator that there are no animations, but why does animationphase then return a value?). To get here I found this old thread http://forums.bistudio.com/showthread.php?63918-Animations, it was hard to read but worth it. So if someone has any further experiences with animations please help me out.


  7. hello,

    currently I am trying to get my AI artillery assets to point their guns at a certain direction with a certain elevation. I tried both dowatch and lookat, but they each take around 15 seconds to stabilize on a static target, and as the reload time of the SPA is only around 9 seconds and because I'd like to include spread and MRSI, this is not really a solution.

    Would it be somehow possible to animate the turret ( with the animate command)? I searched for animation related topics, but I don't really have an understanding of this one as this is my first bigger project, and they mainly concern infantry animations. Also the animations viewer ingame also only shows infantry animations. If anybody has an idea, please help me with this issue.

    Thanks in advance


  8. Thank you for your answer! What I hove to achieve in the end is that my script outputs an angle and direction to which (likely) an AI will align its artillery gun to, and another button press would be the firing command. it's the latter part I struggle currently with, until now I've mainly worked on the UI but now I wanted to finally see some action. So at the moment I'm still sitting in the gunner seat when i trigger my script above, in the end though it'll be an AI. But if "fire" and "forcweaponfire" don't work for me, I doubt they'll later do for AI.


  9. not sure if that's what you are looking for, but maybe could you use this?

    _magazine_names = magazines player;
    {player removeMagazine _x;} forEach _magazine_names;
    {player addmagazine _x;} forEach _magazine_names;

    It returns all the magazines a unit has, not just "30Rnd_9x21_Mag","9Rnd_45ACP_Mag","16Rnd_9x21_Mag", saves them in an array, deletes them, and readds them from the array. A strange bug I found though was that chemlights and smokeshells were heavily multiplying at the "magazines" command, in the end replacing all other mags so you only had like a 100 chemlights, so either don't use them at all or somehow remove them fromt the _magazines_names.

    It will also ignore how many bullets are left in a magazine, it will just give a fresh full one, and also ignore the magazine that is currently loaded in the weapon, but if you check the wiki I think there some commands to get these features in too if you need them.


  10. Although it doesn't exactly solve your problem with the slider that zooms the map, I still thought I post what I have found here, first because it's a similar issue and second because I would not have been able to achieve it if not for this post.

    Long story short, I managed to make the dialog map zoomable with the mouse wheel, although it's not perfect which you'll see if you decide to test this.

    this is the code I use in my OnLoad.sqf (executed onLoad).

    mouse_position_2d = _ctrl_map ctrlAddEventHandler ["MouseMoving", 
    "
    
    _dialog = findDisplay 1200;
    _ctrl_map = _dialog displayCtrl 1300;
    
    _mouse_position_x = _this select 1;
    _mouse_position_y = _this select 2;
    
    
    _position = _ctrl_map ctrlMapScreenToWorld [_mouse_position_x, _mouse_position_y];
    position_2d_array_world = [_position select 0, _position select 1];
    
    "
    ];
    
    zoom_map = _ctrl_map ctrlAddEventHandler ["MouseZChanged",
    "
    _dialog = findDisplay 1200;
    _ctrl_map = _dialog displayCtrl 1300;
    mapscale = ctrlMapScale _ctrl_map;
    
    if ((_this select 1) <= 0) then {
    mapscale = mapscale * 0.8;
    }
    
    else {
    mapscale = mapscale * 1.2;
    };
    
    _ctrl_map ctrlMapAnimAdd [0, mapscale, position_2d_array_world];
    ctrlMapAnimCommit _ctrl_map;
    "
    ];
    

    the problem is that ctrlMapAnimAdd sets the selected position to zoom to in the middle of the map control, so if the point you're zooming to is not exactly in the middle the map will "jump". Now the coursor isn't pointed to location you originally intended to zoom to, and if you move your mouse now the position_2d_array_world will update and the next zoom step will be to a location you didn't intended to zoom to. this means if you use this method you'll have to get used to a slightly different way of zooming the map.

    Anyways, I still hope this can be useful, at least it'll be for me.


  11. hi,

    I'm currently working on an artillery script for the 155mm SPA, and this includes that they should fire when i give the command.

    But I can't get it to work the way I want: I can't use forceWeaponFire, nothing happens if I use this command, which is also descriped in the wiki article at the bottom: "Currently this command is not available for land vehicle remote fire". I don't know why this is the case but I guess there's a reason for it.

    I also tried fire, but whatever combination I try the projectile goes straight up in an angle of around 60-70 degrees, ignoring the direction of the barrel. If I switch to third person and view around the scorcher, the barrel will go straight up after it fired the round. If I don't view around, the barrel will stay in position but the shell will still fly at an high angle.

    I also can't use doArtilleryFire because I want to set the charge and angle manually, and doArtilleryFire doesn't allow that.

    Another thing I tried but have absolutely zero experience with was to use a gamelogic (see code), but it didn't work either.

    Also what buggers me is that when I use fire with a different firemode (e.g. Single2) than the one which is currently selected (e.g. Single1), it will wait until I changed to the corresponding fire mode and not change it on its own.

    this is the code I currently use, of course I can't post all the different versions I tried. 45 and 46 are x and c.

    MY_KEYDOWN_FNC = {
       switch (_this) do {
    	case 45: {
    			vehicle gunner player fire [(currentWeapon vehicle player), "Single1"];
    
           };
    	case 46: {
    
    		hint format ['%1\n%2', currentWeaponMode player, currentWeapon vehicle player];
    		MyGameLogic action ["useWeapon",(currentWeapon vehicle player),vehicle gunner player,0];
    		};
    
       };
    
    };  
    waituntil {!isnull (finddisplay 46)};
    (findDisplay 46) displayAddEventHandler ["KeyDown","_this select 1 call MY_KEYDOWN_FNC;false;"]; 

    Anybody got an idea that could help me?


  12. I'm pretty new to scripting, but if I understand you correctly you want to have a map in your dialog, right?

    you might want to have a look at this https://community.bistudio.com/wiki/Dialog_Control_Map , but it's "outdated", meaning the symbol paths still relate to Arma 2.

    This is the map I have in my dialog, I don't really know how it works but it gets the job done.

    part of my defines.hpp:

    class RscMapControl

    {

    access = 1;

    type = 101;

    idc = 51;

    style = 48;

    colorBackground[] = {0.969,0.957,0.949,1};

    colorOutside[] = {0,0,0,1};

    colorText[] = {0,0,0,1};

    font = "TahomaB";

    sizeEx = 0.029;

    colorSea[] = {0.467,0.631,0.851,0.5};

    colorForest[] = {0.624,0.78,0.388,0.5};

    colorRocks[] = {0,0,0,0.3};

    colorCountlines[] = {0.572,0.354,0.188,0.25};

    colorMainCountlines[] = {0.572,0.354,0.188,0.5};

    colorCountlinesWater[] = {0.491,0.577,0.702,0.3};

    colorMainCountlinesWater[] = {0.491,0.577,0.702,0.6};

    colorForestBorder[] = {0,0,0,0};

    colorRocksBorder[] = {0,0,0,0};

    colorPowerLines[] = {0.1,0.1,0.1,1};

    colorRailWay[] = {0.8,0.2,0,1};

    colorNames[] = {0.1,0.1,0.1,0.9};

    colorInactive[] = {1,1,1,0.5};

    colorLevels[] = {0.286,0.177,0.094,0.5};

    colorTracks[] = {0.84,0.76,0.65,0.15};

    colorRoads[] = {0.7,0.7,0.7,1};

    colorMainRoads[] = {0.9,0.5,0.3,1};

    colorTracksFill[] = {0.84,0.76,0.65,1};

    colorRoadsFill[] = {1,1,1,1};

    colorMainRoadsFill[] = {1,0.6,0.4,1};

    colorGrid[] = {0.1,0.1,0.1,0.6};

    colorGridMap[] = {0.1,0.1,0.1,0.6};

    stickX[] = {0.2,{"Gamma",1,1.5}};

    stickY[] = {0.2,{"Gamma",1,1.5}};

    class Legend

    {

    colorBackground[] = {1,1,1,0.5};

    color[] = {0,0,0,1};

    x = "SafeZoneX + ( ((safezoneW / safezoneH) min 1.2) / 40)";

    y = "SafeZoneY + safezoneH - 4.5 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";

    w = "10 * ( ((safezoneW / safezoneH) min 1.2) / 40)";

    h = "3.5 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";

    font = "PuristaMedium";

    sizeEx = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";

    };

    class ActiveMarker

    {

    color[] = {0.3,0.1,0.9,1};

    size = 50;

    };

    class Command

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\waypoint_ca.paa";

    size = 18;

    importance = 1;

    coefMin = 1;

    coefMax = 1;

    };

    class Task

    {

    colorCreated[] = {1,1,1,1};

    colorCanceled[] = {0.7,0.7,0.7,1};

    colorDone[] = {0.7,1,0.3,1};

    colorFailed[] = {1,0.3,0.2,1};

    color[] = {"(profilenamespace getvariable ['IGUI_TEXT_RGB_R',0])","(profilenamespace getvariable ['IGUI_TEXT_RGB_G',1])","(profilenamespace getvariable ['IGUI_TEXT_RGB_B',1])","(profilenamespace getvariable ['IGUI_TEXT_RGB_A',0.8])"};

    icon = "\A3\ui_f\data\map\mapcontrol\taskIcon_CA.paa";

    iconCreated = "\A3\ui_f\data\map\mapcontrol\taskIconCreated_CA.paa";

    iconCanceled = "\A3\ui_f\data\map\mapcontrol\taskIconCanceled_CA.paa";

    iconDone = "\A3\ui_f\data\map\mapcontrol\taskIconDone_CA.paa";

    iconFailed = "\A3\ui_f\data\map\mapcontrol\taskIconFailed_CA.paa";

    size = 27;

    importance = 1;

    coefMin = 1;

    coefMax = 1;

    };

    class CustomMark

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\custommark_ca.paa";

    size = 24;

    importance = 1;

    coefMin = 1;

    coefMax = 1;

    };

    class Tree

    {

    color[] = {0.45,0.64,0.33,0.4};

    icon = "\A3\ui_f\data\map\mapcontrol\bush_ca.paa";

    size = 12;

    importance = "0.9 * 16 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class SmallTree

    {

    color[] = {0.45,0.64,0.33,0.4};

    icon = "\A3\ui_f\data\map\mapcontrol\bush_ca.paa";

    size = 12;

    importance = "0.6 * 12 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class Bush

    {

    color[] = {0.45,0.64,0.33,0.4};

    icon = "\A3\ui_f\data\map\mapcontrol\bush_ca.paa";

    size = "14/2";

    importance = "0.2 * 14 * 0.05 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class Church

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\church_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Chapel

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\Chapel_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Cross

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\Cross_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Rock

    {

    color[] = {0.1,0.1,0.1,0.8};

    icon = "\A3\ui_f\data\map\mapcontrol\rock_ca.paa";

    size = 12;

    importance = "0.5 * 12 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class Bunker

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\bunker_ca.paa";

    size = 14;

    importance = "1.5 * 14 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class Fortress

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\bunker_ca.paa";

    size = 16;

    importance = "2 * 16 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class Fountain

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\fountain_ca.paa";

    size = 11;

    importance = "1 * 12 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class ViewTower

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\viewtower_ca.paa";

    size = 16;

    importance = "2.5 * 16 * 0.05";

    coefMin = 0.5;

    coefMax = 4;

    };

    class Lighthouse

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\lighthouse_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Quay

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\quay_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Fuelstation

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\fuelstation_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Hospital

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\hospital_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class BusStop

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\busstop_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Transmitter

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\transmitter_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Stack

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\stack_ca.paa";

    size = 20;

    importance = "2 * 16 * 0.05";

    coefMin = 0.9;

    coefMax = 4;

    };

    class Ruin

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\ruin_ca.paa";

    size = 16;

    importance = "1.2 * 16 * 0.05";

    coefMin = 1;

    coefMax = 4;

    };

    class Tourism

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\tourism_ca.paa";

    size = 16;

    importance = "1 * 16 * 0.05";

    coefMin = 0.7;

    coefMax = 4;

    };

    class Watertower

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\watertower_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Waypoint

    {

    color[] = {0,0,0,1};

    size = 24;

    importance = 1;

    coefMin = 1;

    coefMax = 1;

    icon = "\A3\ui_f\data\map\mapcontrol\waypoint_ca.paa";

    };

    class WaypointCompleted

    {

    color[] = {0,0,0,1};

    size = 24;

    importance = 1;

    coefMin = 1;

    coefMax = 1;

    icon = "\A3\ui_f\data\map\mapcontrol\waypointCompleted_ca.paa";

    };

    moveOnEdges = 0;//1;

    x = "SafeZoneXAbs";

    y = "SafeZoneY + 1.5 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";

    w = "SafeZoneWAbs";

    h = "SafeZoneH - 1.5 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";

    shadow = 0;

    ptsPerSquareSea = 5;

    ptsPerSquareTxt = 3;

    ptsPerSquareCLn = 10;

    ptsPerSquareExp = 10;

    ptsPerSquareCost = 10;

    ptsPerSquareFor = 9;

    ptsPerSquareForEdge = 9;

    ptsPerSquareRoad = 6;

    ptsPerSquareObj = 9;

    showCountourInterval = 0;

    scaleMin = 0.001;

    scaleMax = 2.0;

    scaleDefault = 2.0;

    maxSatelliteAlpha = 0.85;

    alphaFadeStartScale = 2.1;

    alphaFadeEndScale = 2.1;

    fontLabel = "PuristaMedium";

    sizeExLabel = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";

    fontGrid = "TahomaB";

    sizeExGrid = 0.02;

    fontUnits = "TahomaB";

    sizeExUnits = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";

    fontNames = "PuristaMedium";

    sizeExNames = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8) * 2";

    fontInfo = "PuristaMedium";

    sizeExInfo = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";

    fontLevel = "PuristaMedium";

    sizeExLevel = 0.02;

    text = "#(argb,8,8,3)color(1,1,1,1)";

    //text = "\a3\ui_f\data\map_background2_co.paa";

    class power

    {

    icon = "\A3\ui_f\data\map\mapcontrol\power_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    color[] = {1,1,1,1};

    };

    class powersolar

    {

    icon = "\A3\ui_f\data\map\mapcontrol\powersolar_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    color[] = {1,1,1,1};

    };

    class powerwave

    {

    icon = "\A3\ui_f\data\map\mapcontrol\powerwave_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    color[] = {1,1,1,1};

    };

    class powerwind

    {

    icon = "\A3\ui_f\data\map\mapcontrol\powerwind_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    color[] = {1,1,1,1};

    };

    class shipwreck

    {

    icon = "\A3\ui_f\data\map\mapcontrol\shipwreck_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    color[] = {1,1,1,1};

    };

    };

    I don't know you open your dialog, at the moment i open mine via a radio trigger, this seems to cause a bug that you cannot scroll with the mousewheel, in this case you have to use numpad + and -.

    this also works if you don't have a map equipped.


  13. hi, does anybody know if it is possible to set a listbox to scroll automatically to the bottom entries?

    I currently have a dialog with many buttons, and I would like to give the players some feedback when they press one, e.g. one button press the text "you pressed button x" would appear.

    I made this by creating a listbox, and each button press adds a new entry to it. But after about 6 button presses my listbox is full, and the scrollbar stays at the top entries, so I have to scroll down manually so see the newer entries.

    there are some entries in the defines.hpp called autoscrollspeed, autoscrolldelay and autoscrollrewind, I changed them a bit but I could see no difference in the behavior.

    I understand this question is not really urgent or too important, but solving it would make using the dialog a bit more convenient, so if anyone has an idea, i would highly appreciate it.

    thanks in advance


  14. found a solution:

    disableSerialization; //reduces errors
    _location = findDisplay 1200; //accesses the dialog
    _ctrl2 = _location displayCtrl 1300; //accesses the map control box, assigns it to ctrl2, which is control "object"
    
    
    _varx = _ctrl2 ctrlSetEventHandler ["MouseButtonDown","if (true) then {
    _location = findDisplay 1200;
    _ctrl2 = _location displayCtrl 1300;
    _varx2 = (_this select 2);
    _varx3 = (_this select 3);
    _position = _ctrl2 ctrlMapScreenToWorld [_varx2, _varx3]; 
    _dialog = findDisplay 1200;
    _ctrl = _dialog displayCtrl 1000;
    _ctrl ctrlSetText format ['pos: %1', _position];
    }"];
    


  15. hello,

    I need to get the location of the cursor so I can use it in ctrlMapScreenToWorld.

    I can get it as a hint by writing

    onMouseButtonDown = hint format ["%1\n%2", _this select 2, _this select 3];
    

    in my dialogs.hpp, but how can I run it in a script so that I can assign it to a variable?

    I've tried to mess around with DisplayAddEventHandler, but I don't understand how they work at all.

    Anybody got an idea?

    Thanks in advance


  16. Hello,

    I'm sorry if this question is really dumb, but i'm new to scripting and after 2 hours of googling and trying i didn't find a solution: All I want is to display variables with their values in my dialog. I've read through this thread (http://forums.bistudio.com/showthread.php?154084-Values-and-Variables-in-Dialog-RscText), and it works fine if I just want to directly access one parameter, in this case my location, but I also need to be able to do some calculations with it.

    my dialogs.hpp

    class test_dialog

    {

    idd = 1200;

    movingenable = true;

    onMouseButtonDown = "_this call test_dialog_Load";

    class Controls

    [...]

    class test_buttonno: RscButton

    {

    idc = -1;

    text = "no"; //--- ToDo: Localize;

    x = 0.5 * safezoneW + safezoneX;

    y = 0.751 * safezoneH + safezoneY;

    w = 0.06375 * safezoneW;

    h = 0.085 * safezoneH;

    action = "_nil =[]ExecVM""hello2.sqf""";

    };

    class test_text: RscText

    {

    idc = 1000;

    text = ""; //--- ToDo: Localize;

    x = 0.1175 * safezoneW + safezoneX;

    y = 0.789 * safezoneH + safezoneY;

    w = 0.25375 * safezoneW;

    h = 0.085 * safezoneH;

    {

    my hello2 script the only way it works, gives me my position in the dialog

    test_dialog_Load = {((_this select 0) displayCtrl 1000) ctrlSetText format ["pos: %1", getPos player]};

    my hello2 script how I would like it to work:

    test_dialog_Load = {

    _number = 12+1; //just some simple calcuation

    {((_this select 0) displayCtrl 1000) ctrlSetText format ["pos: %1", _number]};

    };

    in the latter case it won't show up at all in my dialog.

    anybody got an idea how to solve this?

    thanks in advance


  17. hi, I would like to create markers on my dialog map, but I have no idea how to get there, as I'm fairly new to scripting. I would like to be able to just double click and then a marker appears. anybody got an idea how to do this or if this is possible at all?

    defines.hpp

    // Control types

    #define CT_STATIC 0

    #define CT_BUTTON 1

    #define CT_EDIT 2

    #define CT_SLIDER 3

    #define CT_COMBO 4

    #define CT_LISTBOX 5

    #define CT_TOOLBOX 6

    #define CT_CHECKBOXES 7

    #define CT_PROGRESS 8

    #define CT_HTML 9

    #define CT_STATIC_SKEW 10

    #define CT_ACTIVETEXT 11

    #define CT_TREE 12

    #define CT_STRUCTURED_TEXT 13

    #define CT_CONTEXT_MENU 14

    #define CT_CONTROLS_GROUP 15

    #define CT_SHORTCUTBUTTON 16

    #define CT_XKEYDESC 40

    #define CT_XBUTTON 41

    #define CT_XLISTBOX 42

    #define CT_XSLIDER 43

    #define CT_XCOMBO 44

    #define CT_ANIMATED_TEXTURE 45

    #define CT_OBJECT 80

    #define CT_OBJECT_ZOOM 81

    #define CT_OBJECT_CONTAINER 82

    #define CT_OBJECT_CONT_ANIM 83

    #define CT_LINEBREAK 98

    #define CT_USER 99

    #define CT_MAP 100

    #define CT_MAP_MAIN 101

    #define CT_LISTNBOX 102

    // Static styles

    #define ST_POS 0x0F

    #define ST_HPOS 0x03

    #define ST_VPOS 0x0C

    #define ST_LEFT 0x00

    #define ST_RIGHT 0x01

    #define ST_CENTER 0x02

    #define ST_DOWN 0x04

    #define ST_UP 0x08

    #define ST_VCENTER 0x0C

    #define ST_GROUP_BOX 96

    #define ST_GROUP_BOX2 112

    #define ST_ROUNDED_CORNER ST_GROUP_BOX + ST_CENTER

    #define ST_ROUNDED_CORNER2 ST_GROUP_BOX2 + ST_CENTER

    #define ST_TYPE 0xF0

    #define ST_SINGLE 0x00

    #define ST_MULTI 0x10

    #define ST_TITLE_BAR 0x20

    #define ST_PICTURE 0x30

    #define ST_FRAME 0x40

    #define ST_BACKGROUND 0x50

    #define ST_GROUP_BOX 0x60

    #define ST_GROUP_BOX2 0x70

    #define ST_HUD_BACKGROUND 0x80

    #define ST_TILE_PICTURE 0x90

    #define ST_WITH_RECT 0xA0

    #define ST_LINE 0xB0

    #define ST_SHADOW 0x100

    #define ST_NO_RECT 0x200

    #define ST_KEEP_ASPECT_RATIO 0x800

    #define ST_TITLE ST_TITLE_BAR + ST_CENTER

    // Slider styles

    #define SL_DIR 0x400

    #define SL_VERT 0

    #define SL_HORZ 0x400

    #define SL_TEXTURES 0x10

    // progress bar

    #define ST_VERTICAL 0x01

    #define ST_HORIZONTAL 0

    // Listbox styles

    #define LB_TEXTURES 0x10

    #define LB_MULTI 0x20

    // Tree styles

    #define TR_SHOWROOT 1

    #define TR_AUTOCOLLAPSE 2

    // MessageBox styles

    #define MB_BUTTON_OK 1

    #define MB_BUTTON_CANCEL 2

    #define MB_BUTTON_USER 4

    ////////////////

    //Base Classes//

    ////////////////

    class RscMapControl

    {

    access = 0;

    type = 101;

    idc = 51;

    style = 48;

    colorBackground[] = {0.969,0.957,0.949,1};

    colorOutside[] = {0,0,0,1};

    colorText[] = {0,0,0,1};

    font = "TahomaB";

    sizeEx = 0.04;

    colorSea[] = {0.467,0.631,0.851,0.5};

    colorForest[] = {0.624,0.78,0.388,0.5};

    colorRocks[] = {0,0,0,0.3};

    colorCountlines[] = {0.572,0.354,0.188,0.25};

    colorMainCountlines[] = {0.572,0.354,0.188,0.5};

    colorCountlinesWater[] = {0.491,0.577,0.702,0.3};

    colorMainCountlinesWater[] = {0.491,0.577,0.702,0.6};

    colorForestBorder[] = {0,0,0,0};

    colorRocksBorder[] = {0,0,0,0};

    colorPowerLines[] = {0.1,0.1,0.1,1};

    colorRailWay[] = {0.8,0.2,0,1};

    colorNames[] = {0.1,0.1,0.1,0.9};

    colorInactive[] = {1,1,1,0.5};

    colorLevels[] = {0.286,0.177,0.094,0.5};

    colorTracks[] = {0.84,0.76,0.65,0.15};

    colorRoads[] = {0.7,0.7,0.7,1};

    colorMainRoads[] = {0.9,0.5,0.3,1};

    colorTracksFill[] = {0.84,0.76,0.65,1};

    colorRoadsFill[] = {1,1,1,1};

    colorMainRoadsFill[] = {1,0.6,0.4,1};

    colorGrid[] = {0.1,0.1,0.1,0.6};

    colorGridMap[] = {0.1,0.1,0.1,0.6};

    stickX[] = {0.2,{"Gamma",1,1.5}};

    stickY[] = {0.2,{"Gamma",1,1.5}};

    class Legend

    {

    colorBackground[] = {1,1,1,0.5};

    color[] = {0,0,0,1};

    x = "SafeZoneX + ( ((safezoneW / safezoneH) min 1.2) / 40)";

    y = "SafeZoneY + safezoneH - 4.5 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";

    w = "10 * ( ((safezoneW / safezoneH) min 1.2) / 40)";

    h = "3.5 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";

    font = "PuristaMedium";

    sizeEx = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";

    };

    class ActiveMarker

    {

    color[] = {0.3,0.1,0.9,1};

    size = 50;

    };

    class Command

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\waypoint_ca.paa";

    size = 18;

    importance = 1;

    coefMin = 1;

    coefMax = 1;

    };

    class Task

    {

    colorCreated[] = {1,1,1,1};

    colorCanceled[] = {0.7,0.7,0.7,1};

    colorDone[] = {0.7,1,0.3,1};

    colorFailed[] = {1,0.3,0.2,1};

    color[] = {"(profilenamespace getvariable ['IGUI_TEXT_RGB_R',0])","(profilenamespace getvariable ['IGUI_TEXT_RGB_G',1])","(profilenamespace getvariable ['IGUI_TEXT_RGB_B',1])","(profilenamespace getvariable ['IGUI_TEXT_RGB_A',0.8])"};

    icon = "\A3\ui_f\data\map\mapcontrol\taskIcon_CA.paa";

    iconCreated = "\A3\ui_f\data\map\mapcontrol\taskIconCreated_CA.paa";

    iconCanceled = "\A3\ui_f\data\map\mapcontrol\taskIconCanceled_CA.paa";

    iconDone = "\A3\ui_f\data\map\mapcontrol\taskIconDone_CA.paa";

    iconFailed = "\A3\ui_f\data\map\mapcontrol\taskIconFailed_CA.paa";

    size = 27;

    importance = 1;

    coefMin = 1;

    coefMax = 1;

    };

    class CustomMark

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\custommark_ca.paa";

    size = 24;

    importance = 1;

    coefMin = 1;

    coefMax = 1;

    };

    class Tree

    {

    color[] = {0.45,0.64,0.33,0.4};

    icon = "\A3\ui_f\data\map\mapcontrol\bush_ca.paa";

    size = 12;

    importance = "0.9 * 16 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class SmallTree

    {

    color[] = {0.45,0.64,0.33,0.4};

    icon = "\A3\ui_f\data\map\mapcontrol\bush_ca.paa";

    size = 12;

    importance = "0.6 * 12 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class Bush

    {

    color[] = {0.45,0.64,0.33,0.4};

    icon = "\A3\ui_f\data\map\mapcontrol\bush_ca.paa";

    size = "14/2";

    importance = "0.2 * 14 * 0.05 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class Church

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\church_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Chapel

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\Chapel_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Cross

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\Cross_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Rock

    {

    color[] = {0.1,0.1,0.1,0.8};

    icon = "\A3\ui_f\data\map\mapcontrol\rock_ca.paa";

    size = 12;

    importance = "0.5 * 12 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class Bunker

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\bunker_ca.paa";

    size = 14;

    importance = "1.5 * 14 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class Fortress

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\bunker_ca.paa";

    size = 16;

    importance = "2 * 16 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class Fountain

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\fountain_ca.paa";

    size = 11;

    importance = "1 * 12 * 0.05";

    coefMin = 0.25;

    coefMax = 4;

    };

    class ViewTower

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\viewtower_ca.paa";

    size = 16;

    importance = "2.5 * 16 * 0.05";

    coefMin = 0.5;

    coefMax = 4;

    };

    class Lighthouse

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\lighthouse_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Quay

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\quay_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Fuelstation

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\fuelstation_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Hospital

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\hospital_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class BusStop

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\busstop_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Transmitter

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\transmitter_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Stack

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\stack_ca.paa";

    size = 20;

    importance = "2 * 16 * 0.05";

    coefMin = 0.9;

    coefMax = 4;

    };

    class Ruin

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\ruin_ca.paa";

    size = 16;

    importance = "1.2 * 16 * 0.05";

    coefMin = 1;

    coefMax = 4;

    };

    class Tourism

    {

    color[] = {0,0,0,1};

    icon = "\A3\ui_f\data\map\mapcontrol\tourism_ca.paa";

    size = 16;

    importance = "1 * 16 * 0.05";

    coefMin = 0.7;

    coefMax = 4;

    };

    class Watertower

    {

    color[] = {1,1,1,1};

    icon = "\A3\ui_f\data\map\mapcontrol\watertower_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    };

    class Waypoint

    {

    color[] = {0,0,0,1};

    size = 24;

    importance = 1;

    coefMin = 1;

    coefMax = 1;

    icon = "\A3\ui_f\data\map\mapcontrol\waypoint_ca.paa";

    };

    class WaypointCompleted

    {

    color[] = {0,0,0,1};

    size = 24;

    importance = 1;

    coefMin = 1;

    coefMax = 1;

    icon = "\A3\ui_f\data\map\mapcontrol\waypointCompleted_ca.paa";

    };

    moveOnEdges = 0;//1;

    x = "SafeZoneXAbs";

    y = "SafeZoneY + 1.5 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";

    w = "SafeZoneWAbs";

    h = "SafeZoneH - 1.5 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";

    shadow = 0;

    ptsPerSquareSea = 5;

    ptsPerSquareTxt = 3;

    ptsPerSquareCLn = 10;

    ptsPerSquareExp = 10;

    ptsPerSquareCost = 10;

    ptsPerSquareFor = 9;

    ptsPerSquareForEdge = 9;

    ptsPerSquareRoad = 6;

    ptsPerSquareObj = 9;

    showCountourInterval = 0;

    scaleMin = 0.001;

    scaleMax = 1;

    scaleDefault = 0.16;

    maxSatelliteAlpha = 0.85;

    alphaFadeStartScale = 0.35;

    alphaFadeEndScale = 0.4;

    fontLabel = "PuristaMedium";

    sizeExLabel = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";

    fontGrid = "TahomaB";

    sizeExGrid = 0.02;

    fontUnits = "TahomaB";

    sizeExUnits = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";

    fontNames = "PuristaMedium";

    sizeExNames = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8) * 2";

    fontInfo = "PuristaMedium";

    sizeExInfo = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";

    fontLevel = "TahomaB";

    sizeExLevel = 0.02;

    text = "#(argb,8,8,3)color(1,1,1,1)";

    //text = "\a3\ui_f\data\map_background2_co.paa";

    class power

    {

    icon = "\A3\ui_f\data\map\mapcontrol\power_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    color[] = {1,1,1,1};

    };

    class powersolar

    {

    icon = "\A3\ui_f\data\map\mapcontrol\powersolar_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    color[] = {1,1,1,1};

    };

    class powerwave

    {

    icon = "\A3\ui_f\data\map\mapcontrol\powerwave_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    color[] = {1,1,1,1};

    };

    class powerwind

    {

    icon = "\A3\ui_f\data\map\mapcontrol\powerwind_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    color[] = {1,1,1,1};

    };

    class shipwreck

    {

    icon = "\A3\ui_f\data\map\mapcontrol\shipwreck_CA.paa";

    size = 24;

    importance = 1;

    coefMin = 0.85;

    coefMax = 1;

    color[] = {1,1,1,1};

    };

    };

    class RscButton

    {

    access = 0;

    type = CT_BUTTON;

    text = "";

    colorText[] = {1,1,1,.9};

    colorDisabled[] = {0.4,0.4,0.4,0};

    colorBackground[] = {0.75,0.75,0.75,0.8};

    colorBackgroundDisabled[] = {0,0.0,0};

    colorBackgroundActive[] = {0.75,0.75,0.75,1};

    colorFocused[] = {0.75,0.75,0.75,.5};

    colorShadow[] = {0.023529,0,0.0313725,1};

    colorBorder[] = {0.023529,0,0.0313725,1};

    soundEnter[] = {"\A3\ui_f\data\sound\RscButton\soundEnter",0.09,1};

    soundPush[] = {"\A3\ui_f\data\sound\RscButton\soundPush",0.09,1};

    soundClick[] = {"\A3\ui_f\data\sound\RscButton\soundClick",0.09,1};

    soundEscape[] = {"\A3\ui_f\data\sound\RscButton\soundEscape",0.09,1};

    style = 2;

    x = 0;

    y = 0;

    w = 0.055589;

    h = 0.039216;

    shadow = 2;

    font = "EtelkaNarrowMediumPro";

    sizeEx = 0.03921;

    offsetX = 0.003;

    offsetY = 0.003;

    offsetPressedX = 0.002;

    offsetPressedY = 0.002;

    borderSize = 0;

    };

    class RscFrame

    {

    type = CT_STATIC;

    idc = -1;

    style = ST_FRAME;

    shadow = 2;

    colorBackground[] = {1,1,1,0.5};

    colorText[] = {1,1,1,0.9};

    font = "EtelkaNarrowMediumPro";

    sizeEx = 0.03;

    text = "";

    };

    class BOX

    {

    type = CT_STATIC;

    idc = -1;

    style = ST_CENTER;

    shadow = 2;

    colorText[] = {1,1,1,1};

    font = "EtelkaNarrowMediumPro";

    sizeEx = 0.02;

    colorBackground[] = { 0.2,0.2,0.2, 0.9 };

    text = "";

    };

    dialogs.hpp

    ////////////////////////////////////////////////////////

    // GUI EDITOR OUTPUT START (by quantenfrik, v1.063, #Lucyha)

    ////////////////////////////////////////////////////////

    class test_dialog

    {

    idd = -1;

    //movingenable = true;

    class Controls

    {

    class test_box: box

    {

    idc = -1;

    text = ""; //--- ToDo: Localize;

    x = 0.197187 * safezoneW + safezoneX;

    y = 0.109 * safezoneH + safezoneY;

    w = 0.589688 * safezoneW;

    h = 0.748 * safezoneH;

    };

    class test_frame: RscFrame

    {

    idc = -1;

    text = "this is a test frame"; //--- ToDo: Localize;

    x = 0.197187 * safezoneW + safezoneX;

    y = 0.109 * safezoneH + safezoneY;

    w = 0.589688 * safezoneW;

    h = 0.748 * safezoneH;

    };

    class test_map: RscMapControl

    {

    idc = -1;

    text = "#(argb,8,8,3)color(1,1,1,1)";

    x = 0.260619 * safezoneW + safezoneX;

    y = 0.1923 * safezoneH + safezoneY;

    w = 0.478125 * safezoneW;

    h = 0.493 * safezoneH;

    };

    class test_buttonyes: RscButton

    {

    idc = -1;

    text = "yes"; //--- ToDo: Localize;

    x = 0.356562 * safezoneW + safezoneX;

    y = 0.751 * safezoneH + safezoneY;

    w = 0.06375 * safezoneW;

    h = 0.085 * safezoneH;

    action = "closeDialog 0;_nil =[]ExecVM""hello1.sqf""";

    };

    class test_buttonno: RscButton

    {

    idc = -1;

    text = "no"; //--- ToDo: Localize;

    x = 0.5 * safezoneW + safezoneX;

    y = 0.751 * safezoneH + safezoneY;

    w = 0.06375 * safezoneW;

    h = 0.085 * safezoneH;

    action = "closeDialog 0;_nil =[]ExecVM""hello2.sqf""";

    };

    };

    };

    ////////////////////////////////////////////////////////

    // GUI EDITOR OUTPUT END

    ////////////////////////////////////////////////////////

    thanks in advance


  18. although i have a geometry lod which has the outeriors of my model and a fire geometry with rvmats for the body, engine and fuel, I can still walk through most parts of my vehicle. i can also shoot through the hull, but not through the engine and the fueltank, which block my bullets exactly as they should. but i can't get this to work for the body, i tried editing the config.cpp in various ways but none worked. if anyone wants to have a look or has any ideas: https://www.dropbox.com/sh/1ff5d9lxq71ib2x/AAB3qtyeHkN8B7g_YhnCLEWra

    thanks in advance

×