Jump to content

NURabbit

Member
  • Posts

    9
  • Joined

  • Last visited

Everything posted by NURabbit

  1. verified all files - just started today for no reason lemme know please if anyone knows what I should do?
  2. !@#!@#$ I got it working a bit!!! Now my problem is it only works on one of my refiners.. how can I make it work on all my ref. units at once?
  3. Side note - this is the sum of what I have so far for my project.. Programming board - 'unit' onStart = screen.clearScriptOutput() Screen is linked as the last slot following the refiners, for the screen, it has an 'onOutputChanged' filter of -- Define actions to be done when receiving a keyword local actions = { ['calcium'] = function() ref.stop() ref.setCurrentSchematic("1358793857") ref.start() end, ['copper'] = function() ref.stop() ref.setCurrentSchematic("1447143715") ref.start() end, ['concrete'] = function() ref.stop() ref.setCurrentSchematic("394971409") ref.start() end } -- Check if an action is defined if actions[output] then -- Clear screen output screen.clearScriptOutput() -- Execute the action actions[output]() end and the screen itself has the following code --# Buttonclass definition called only at the first frame if not Button then -- getEllipsis( font, text, maxWidth) -- Return a shorten text string by with with ... at the end function getEllipsis(font, text, maxWidth) local width = getTextBounds(font, '...') for i = 1, #text do local line = getTextBounds(font, text:sub(1,i)) + width if line > maxWidth then return text:sub(1,i-1)..'...' end end return text end Button = {} Button.__index = Button -- Button object constructor -- .x : X component of the position -- .y : Y component of the position -- .width : Width of the button -- .height : Height of the button -- .caption : Associated text caption -- .onClick : Function called when the button is clicked function Button:new(x, y, width, height, caption) local self = { x = x or 0, y = y or 0, w = width or 100, h = height or 20, caption = caption or "", onClick = nil } -- Draws the button on the screen using the given layer function self:draw(layer, font) -- Localize object data local x, y, w, h = self.x, self.y, self.w, self.h local min, max = self.min, self.max -- Get cursor data local mx, my = getCursor() local down = getCursorDown() local released = getCursorReleased() local clicked = false -- Determine if the cursor is on the button and switch the state if (mx >= x and mx <= x+w) and (my >= y and my <= y+h) then if down then clicked = true -- Call the onClick function when the mouse button is released elseif released then if self.onClick then -- Provide cursor position in arguments self:onClick( mx, my) end end end --# Draw the button -- Define box default strokes style setDefaultStrokeColor(layer, Shape_BoxRounded, 1, 1, 1, 1) setDefaultStrokeWidth(layer, Shape_BoxRounded, 0.1) -- If the button is clicked change the background if clicked then setNextFillColor(layer, 0.1, 0.1, 0.1, 1) else setNextFillColor(layer, 0.3, 0.3, 0.3, 1) end addBoxRounded(layer, x, y, w, h, 1) -- Draw caption and value display local caption = getEllipsis(font, self.caption, w-12) local font = font or nil setNextTextAlign( layer, AlignH_Center, AlignV_Middle) addText( layer, font, caption, x+0.5*w, y+0.5*h) end return setmetatable(self, Button) end end -- Get screen resolution local rx, ry = getResolution() local medium = loadFont('Play', 20) --# Initialization called only at the first frame if not _init then -- Draw the 3 buttons buttonRed = Button:new(0.5*rx - 100, 0.35*ry - 16, 220, 42, "Refine - Calcium") buttonGreen = Button:new(0.5*rx - 100, 0.5*ry - 16, 220, 42, "Refine - Copper") buttonBlue = Button:new(0.5*rx - 100, 0.65*ry - 16, 220, 42, "Refine - Concrete") buttonRed.onClick = function(self) setOutput('calcium') end buttonGreen.onClick = function(self) setOutput('copper') end buttonBlue.onClick = function(self) setOutput('concrete') end _init = true end --# Rendering local layer = createLayer() -- Draw buttons buttonRed:draw( layer, medium) buttonGreen:draw( layer, medium) buttonBlue:draw( layer, medium) -- Request a run at each frame requestAnimationFrame(1)
  4. Well let me reiterate. my main question is this part local actions = { ['calcium'] = function() ref.stop() ref.setCurrentSchematic("1358793857") ref.start() end, is that structured correctly that when 'calcium' is called, it will run the 3 ref. commands one after eachother? are my brackets correct? I am totally not a programmer, so the terms for this stuff is still foreign to me Once again - any help a godsend! I really want to make this a reality, as I spend SO much time screwing around with schematics.. also, if this IS correct, can the commands just be issued like that all in one shot, or would the industry unit require a delay between each? I assume it will just queue the commands on its own for when its ready but.. once again, total nub
  5. Hey, I have designed a simple setup I want to use to control a bunch of refiners... the screen outputs either 'calcium' 'copper' or 'concrete' and this is what I have for the receiving end,, oh and every linked refiner is named 'ref' does not seem to work or spit out an error, due to my noobishness with coding, im sure its just structured wrong or something -- Define actions to be done when receiving a keyword local actions = { ['calcium'] = function() ref.stop() ref.setCurrentSchematic("1358793857") ref.start() end, ['copper'] = function() ref.stop() ref.setCurrentSchematic("1447143715") ref.start() end, ['concrete'] = function() ref.stop() ref.setCurrentSchematic("394971409") ref.start() end } -- Check if an action is defined if actions[output] then -- Clear screen output screen.clearScriptOutput() -- Execute the action actions[output]() end Thanks in advance!!
  6. So, I am an account holder.. and it says I need time on my account (Regardless of claiming a '2 week free' voucher not much longer than a week ago) I have purchased my initial month through steam, and now when I go to purchase more time, it informs me the game is already in my library and refuses to let me buy more time.. Please inform, and if possible please look into my free 2 week thing, as it just gave out, on a Saturday, and theres no way I accepted that on a Saturday.. it was at least Tuesday which I did.. Thanks guys and hope to be playing again soon, love the game
×
×
  • Create New...