Guest User

Untitled

a guest
Nov 12th, 2011
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 6.68 KB | None | 0 0
  1. function gadget:GetInfo()
  2. return {
  3.     name      = "Buttons",
  4.     desc      = "Sets icons for buttons",
  5.     author    = "Smoth",
  6.     date      = "july, 2009",
  7.     license   = "public domain",
  8.     layer     = -5,
  9.     enabled   = true  --  loaded by default?
  10.     }
  11. end
  12.  
  13.    
  14. if (gadgetHandler:IsSyncedCode()) then
  15.  
  16. local cmdbuttonDefs = {}
  17. local cmdID
  18.  
  19.     if VFS.FileExists("LuaRules/Configs/cmdbuttons.lua") then
  20.         cmdbuttonDefs = VFS.Include("LuaRules/Configs/cmdbuttons.lua")
  21.         else
  22.             error("missing file: LuaRules/Configs/cmdbuttons.lua")
  23.     end
  24.  
  25.     function somethingelse(u, ud, team)
  26.         for CMDBTN,CMDBTNID in pairs(cmdbuttonDefs) do
  27.             cmdID = Spring.FindUnitCmdDesc(u, CMD[CMDBTN] )
  28.  
  29.             if ( cmdID and cmdbuttonDefs[CMDBTN].texture ) then
  30.                 Spring.EditUnitCmdDesc(u, cmdID, {onlyTexture=cmdbuttonDefs[CMDBTN].onlyTexture or false, texture = cmdbuttonDefs[CMDBTN].texture,} )
  31.             end
  32.            
  33.             if ( cmdID and CMDBTN == "MOVE_STATE" ) then   
  34.             --Spring.Echo("movestate",Spring.GetUnitStates(u)["movestate"])
  35.                 if  ( Spring.GetUnitStates(u)["movestate"] == 1 ) then
  36.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_maneuver.png", } )
  37.                 elseif  ( Spring.GetUnitStates(u)["movestate"] == 2) then
  38.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_roam.png", } )
  39.                 else   
  40.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_holdposition.png",} )
  41.                 end
  42.             end -- end move state handler
  43.            
  44.             if ( cmdID and CMDBTN == "FIRE_STATE" ) then       
  45.             --Spring.Echo("firestate",Spring.GetUnitStates(u)["firestate"])
  46.                 if  ( Spring.GetUnitStates(u)["firestate"] == 1 ) then
  47.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_returnfire.png", } )
  48.                 elseif  ( Spring.GetUnitStates(u)["firestate"] == 2) then
  49.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_fireatwill.png", } )
  50.                 else   
  51.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_holdfire.png",} )
  52.                 end
  53.             end -- end fire state handler
  54.            
  55.             if ( cmdID and CMDBTN == "AUTOREPAIRLEVEL" ) then
  56.                 if  ( Spring.GetUnitStates(u)["autorepairlevel"] == 0 ) then
  57.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_guage0.png", } )
  58.                 elseif  ( Spring.GetUnitStates(u)["autorepairlevel"] == 0.30000001192093) then
  59.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_guage30.png", } )
  60.                 elseif  ( Spring.GetUnitStates(u)["autorepairlevel"] == 0.5) then
  61.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_guage50.png", } )
  62.                 else   
  63.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_guage80.png",} )
  64.                 end
  65.             end
  66.            
  67.            
  68.             if ( cmdID and CMDBTN == "TRAJECTORY" ) then       
  69.             --Spring.Echo("trajectory",Spring.GetUnitStates(u)["trajectory"])
  70.                 if  ( Spring.GetUnitStates(u)["trajectory"] == 1 ) then
  71.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/high_trajectory.png", } )
  72.                 else
  73.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/low_trajectory.png", } )
  74.                 end
  75.             end -- end fire state handler
  76.            
  77.            
  78.             if ( cmdID and CMDBTN == "DGUN" and ud == UnitDefNames.juagg.id ) then
  79.                 Spring.EditUnitCmdDesc(u, cmdID, {name="Barrage", tooltip="FIRE ALL GUNS", texture="bitmaps/ui/abilities/barrage.png",} )
  80.             end
  81.            
  82.         end
  83.     end -- end unit finished
  84.  
  85.     function gadget:AllowCommand(u, ud, team, cmd, param, opts)
  86.        
  87.         if cmd == CMD.REPEAT then
  88.             cmdID = Spring.FindUnitCmdDesc(u, CMD.REPEAT ) 
  89.                 if (cmdID ) then
  90.                 if  ( Spring.GetUnitStates(u)["repeat"] == true ) then
  91.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_repeatoff.png", } )
  92.                 else   
  93.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_repeaton.png",} )
  94.                 end
  95.             end
  96.             return CMD.REPEAT
  97.         end -- end repeat handler
  98.        
  99.         if cmd == CMD.ONOFF then
  100.             cmdID = Spring.FindUnitCmdDesc(u, CMD.ONOFF )  
  101.             if (cmdID ) then
  102.                 if Spring.GetUnitStates(u)["active"] == true then
  103.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_off.png", } )
  104.                 else   
  105.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_on.png",} )
  106.                 end
  107.             end
  108.             return CMD.ONOFF
  109.         end -- end on/off handler
  110.        
  111.         if cmd == CMD.MOVE_STATE then
  112.             cmdID = Spring.FindUnitCmdDesc(u, CMD.MOVE_STATE ) 
  113.             if (cmdID ) then
  114.                 if  ( param[1] == 1 ) then
  115.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_maneuver.png", } )
  116.                 elseif  ( param[1] == 2) then
  117.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_roam.png", } )
  118.                 else   
  119.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_holdposition.png",} )
  120.                 end
  121.             end
  122.             return CMD.MOVE_STATE
  123.         end -- end move state handler
  124.        
  125.         if cmd == CMD.FIRE_STATE then
  126.             cmdID = Spring.FindUnitCmdDesc(u, CMD.FIRE_STATE ) 
  127.             if (cmdID ) then
  128.                 if  ( param[1] == 1 ) then
  129.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_returnfire.png", } )
  130.                 elseif  ( param[1] == 2) then
  131.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_fireatwill.png", } )
  132.                 else   
  133.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_holdfire.png",} )
  134.                 end
  135.             end
  136.             return CMD.FIRE_STATE
  137.         end -- end fire state handler
  138.        
  139.         if cmd == CMD.TRAJECTORY then
  140.             cmdID = Spring.FindUnitCmdDesc(u, CMD.TRAJECTORY ) 
  141.             if (cmdID ) then
  142.                 if  ( param[1] == 1 ) then
  143.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/high_trajectory.png", } )
  144.                 else
  145.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/low_trajectory.png", } )
  146.                 end
  147.             end
  148.             return CMD.TRAJECTORY
  149.         end -- end fire state handler
  150.        
  151.         if cmd == CMD.AUTOREPAIRLEVEL then
  152.             cmdID = Spring.FindUnitCmdDesc(u, CMD.AUTOREPAIRLEVEL )
  153.             --Spring.Echo(Spring.GetUnitStates(u)["autorepairlevel"])
  154.             if (cmdID ) then
  155.                 if  ( Spring.GetUnitStates(u)["autorepairlevel"] == 0 ) then
  156.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_guage30.png", } )
  157.                 elseif  ( Spring.GetUnitStates(u)["autorepairlevel"] == 0.30000001192093) then
  158.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_guage50.png", } )
  159.                 elseif  ( Spring.GetUnitStates(u)["autorepairlevel"] == 0.5) then
  160.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_guage80.png", } )
  161.                 else   
  162.                     Spring.EditUnitCmdDesc(u, cmdID, {texture="bitmaps/ui/buttons/cmd_guage0.png",} )
  163.                 end
  164.             end
  165.             return CMD.AUTOREPAIRLEVEL
  166.         end -- end autorepairlevel handler
  167.     return true
  168.     end -- end allow command
  169.  
  170.     function gadget:UnitGiven(u, ud, team)
  171.         somethingelse(u,ud,team)
  172.     end
  173.  
  174.     function gadget:UnitCreated(u, ud, team)
  175.         somethingelse(u,ud,team)
  176.     end
  177. end
  178.  
  179.  
Advertisement
Add Comment
Please, Sign In to add comment