Moon_chilD 200 Posted November 14, 2017 Hey guys, each day you want to learn something more. I think its time to go further into Dialog editing. What I want to do is, I want to have a simple Dialog where in the middle will be a map (which you can move and everything). On this map I want to have clickable/selectable "Marker". When the marker is selected, you then press on a button and will be teleported to that position. So its basically a MHQ script. What I also want to do is, having the teleport option only work when the vehicle is alive and not moving. My biggest problem right now is though, that I have no clue how to get the map and the selectable marker. Anybody have an Idea how I could do that? Thanks so far. If you have any further questions, just ask! Many greetings Moony Share this post Link to post Share on other sites
HazJ 1289 Posted November 14, 2017 class RscMapControl { deletable = 0; fade = 0; access = 0; type = CT_MAP_MAIN; idc = 51; style = ST_MULTI + ST_TITLE_BAR; 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 + GUI_GRID_W; y = SafeZoneY + safezoneH - 4.5 * GUI_GRID_H; w = 10 * GUI_GRID_W; h = 3.5 * GUI_GRID_H; font = "RobotoCondensed"; sizeEx = GUI_TEXT_SIZE_SMALL; }; 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 { taskNone = "#(argb,8,8,3)color(0,0,0,0)"; taskCreated = "#(argb,8,8,3)color(0,0,0,1)"; taskAssigned = "#(argb,8,8,3)color(1,1,1,1)"; taskSucceeded = "#(argb,8,8,3)color(0,1,0,1)"; taskFailed = "#(argb,8,8,3)color(1,0,0,1)"; taskCanceled = "#(argb,8,8,3)color(1,0.5,0,1)"; 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[] = {1,1,1,1}; icon = "\a3\ui_f\data\map\mapcontrol\custommark_ca.paa"; size = 18; 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 LineMarker { textureComboBoxColor = "#(argb,8,8,3)color(1,1,1,1)"; lineWidthThin = 0.008; lineWidthThick = 0.014; lineDistanceMin = 3e-005; lineLengthMin = 5; }; 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 = 16; importance = "2 * 16 * 0.05"; coefMin = 0.4; coefMax = 2; }; 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[] = {1,1,1,1}; importance = 1; coefMin = 1; coefMax = 1; icon = "\a3\ui_f\data\map\mapcontrol\waypoint_ca.paa"; size = 18; }; class WaypointCompleted { color[] = {1,1,1,1}; importance = 1; coefMin = 1; coefMax = 1; icon = "\a3\ui_f\data\map\mapcontrol\waypointcompleted_ca.paa"; size = 18; }; moveOnEdges = 1; x = "SafeZoneXAbs"; y = SafeZoneY + 1.5 * GUI_GRID_H; w = "SafeZoneWAbs"; h = SafeZoneH - 1.5 * GUI_GRID_H; shadow = 0; ptsPerSquareSea = 5; ptsPerSquareTxt = 20; 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 = 2; alphaFadeEndScale = 2; colorTrails[] = {0.84,0.76,0.65,0.15}; colorTrailsFill[] = {0.84,0.76,0.65,0.65}; fontLabel = "RobotoCondensed"; sizeExLabel = GUI_TEXT_SIZE_SMALL; fontGrid = "TahomaB"; sizeExGrid = 0.02; fontUnits = "TahomaB"; sizeExUnits = GUI_TEXT_SIZE_SMALL; fontNames = "EtelkaNarrowMediumPro"; sizeExNames = GUI_TEXT_SIZE_SMALL * 2; fontInfo = "RobotoCondensed"; sizeExInfo = GUI_TEXT_SIZE_SMALL; fontLevel = "TahomaB"; sizeExLevel = 0.02; text = "#(argb,8,8,3)color(1,1,1,1)"; idcMarkerColor = -1; idcMarkerIcon = -1; textureComboBoxColor = "#(argb,8,8,3)color(1,1,1,1)"; showMarkers = 1; 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[] = {0,0,0,1}; }; }; Markers will show on this map, like they do with the normal one. All you need to do then is something like this: onMapSingleClick "if ((_pos distance2D getMarkerPos ""MHQ"" < 10) && (alive MHQ) && (speed MHQ isEqualTo 0)) then {} else {}; onMapSingleClick """";"; 3 Share this post Link to post Share on other sites
Moon_chilD 200 Posted November 14, 2017 Okay, that helped already. Thank you alot. The map is working. What I now would like to have is: Lets say I have 3 MHQs. I want it so that you click on one of the marker (it might even change color from Blue to Green or something like that) and then you click a button underneath the Map. Any idea how I could do something like that? Share this post Link to post Share on other sites
HazJ 1289 Posted November 14, 2017 EDIT/UPDATE: Tested and working! This uses vehicle (MHQ) position to spawn. Can easily be changed to markers, you can still see the markers on map though, etc... onMapSingleClick { _MHQs = [MHQ1, MHQ2, MHQ3] select {(_pos distance2D getPos _x < 10)}; if ((_MHQs isEqualTo [])) exitWith { hintSilent "Please select a MHQ to respawn at!"; }; selectedMHQ = _MHQs select 0; hintSilent format ["Selected MHQ: %1", (((str selectedMHQ) splitString "MHQ") select 0)]; ((uiNamespace getVariable "disp_respawnSelectionMenu") displayCtrl 800) ctrlAddEventHandler ["ButtonClick", { if ((speed selectedMHQ isEqualTo 0) && (alive selectedMHQ)) then { hintSilent format ["You have respawned at MHQ #%1", (((str selectedMHQ) splitString "MHQ") select 0)]; player setPos [(getPos selectedMHQ select 0), ((getPos selectedMHQ select 1) - 8), (getPos selectedMHQ select 2)]; } else { hintSilent "Teleport currently unavailable."; }; }]; }; You may want to change the distance number from 10 to maybe 50 - 100 since with that value, I had to zoom right in and click. NOTE: Remember to change the display and control IDC to yours. 2 Share this post Link to post Share on other sites
Moon_chilD 200 Posted November 26, 2017 @HazJ Thank you for not only what you've posted here but also your ongoing help via Steam. My dialog is done! 1 Share this post Link to post Share on other sites