User:ArceusInator/Sandbox

From Legacy Roblox Wiki
Revision as of 16:06, 30 March 2011 by >ArceusInator (will finish)
Jump to navigationJump to search

Some useful functions...

function shared:RealType(v)

   local libraries = {Axes, BrickColor, CFrame, Color3, Faces}

   if type(v) == "userdata" then
      
      for _,i in pairs(libraries) do
         if v == i then
            return string.lower(tostring(i))
         end
      end

      if pcall(function() i = v:IsA("Instance") end) then
         return "object"
      elseif pcall(function() x = v.X end) then
         if pcall(function() z = v.Z end) then
            if Axes.new(v.X, v.Y, v.Z) == v then
               return "axes"
            elseif pcall(function() comp = v:components() end) then
               return "coordinateframe"
            else
               return "vector3"
            end
         elseif Vector2.new(v.X, v.Y) == v then
            return "vector2"
         elseif pcall(function() xo = 
         end
      elseif pcall(function() r = v.r end) then
         if BrickColor.new(v.r, v.g, v.b) == v then
            return "brickcolor"
         elseif Color3.new(v.r, v.g, v.b) == v then
            return "color3"
         end
      elseif pcall(function() top = v.Top) then
         if Faces.new(v.Back, v.Bottom, v.Front, v.Left, v.Right, v.Top) == v then
            return "faces"
         end
      elseif pcall(function() connect = v.connected end) then
         return "rbxscriptconnection"
      elseif pcall(function() conn = v:connect(function()end)end) then
         return "rbxscriptsignal"
      elseif pcall(function() origin = v.Origin end) then
         return "ray"
      elseif pcall(function() cf = v.CFrame end) then
         return "region3"