0 votes

Is there any operator overloading like in cpp

i want to do something like

class Ab:
    var a:int
    var b:int

    func _init(_a,_b):
        self.a = _a
        self.b = _b

    Ab operator + (val:int):
        var ans = Ab.new(a,b)
        ans.a += val
        ans.b += val*2
        return ans


var ab = Ab.new(2,3)
var ab2 = ab+5

and if it can, how can i make 5+ab as same as ab+5

in Engine by (137 points)

1 Answer

+5 votes
Best answer

Math operators can't be overloaded in GDScript. You will have to write functions doing it explicitely and call them.

by (29,090 points)
selected by
Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read Frequently asked questions and How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to [email protected] with your username.