Diffrence between : and . when calling functions in a module?

For example

local myModule =  {} 

function myModule:Func() -- From my understanding, this passes the self automatically

end

function myModule.Func()

end

return myModule

Why do when I do this the first parameter is nil?

--Script
self.Ability(Arg1) 

--Inside module script 
function doThis(Arg1)
print(Arg1) -- Outputs as nil

end

1 Like

Sugar syntaxing:

2 Likes