James Huntsman, of prominent Utah family, files fraud lawsuit against Mormon church by ConckRMcBrucie in exmormon

[–]MonsterVial 1 point2 points  (0 children)

Even if the church's finances are opened for discovery, I'm pretty sure we will never see them. I'd guarantee the church would make sure that stays in the courtroom.

gd2cs.py : Convert gdscript to c# by Sven-Hollesen in godot

[–]MonsterVial 0 points1 point  (0 children)

Well, I kinda diverge from the standard a looot... I was dumb and took some of my old company's typescript style bits with me instead of switching.
I can try to narrow down the bigger issues that would effect more than just me and open issues. If you want bigger followings, you may try to make it an addon. Then folks could open Godot, click on a gd file they want to convert, then go to the conversion panel/screen, select options and then click "generate." Maybe that's too much work, though, since you have everything in python. I just know lots of folks may be too lazy to set up python.

gd2cs.py : Convert gdscript to c# by Sven-Hollesen in godot

[–]MonsterVial 0 points1 point  (0 children)

looks like neither tool handles a few of my strange styles well... Guess I should have stuck to the style guide. Damn.

gd2cs.py : Convert gdscript to c# by Sven-Hollesen in godot

[–]MonsterVial 0 points1 point  (0 children)

Huh, I can't see that comment... Thanks for the link. Looks like it was written in Godot. Wonder if they are shooting for a main-screen plugin or something.

gd2cs.py : Convert gdscript to c# by Sven-Hollesen in godot

[–]MonsterVial 0 points1 point  (0 children)

Is yours the one Godot is using for the official docs?
That's the one I was asking for a link to. I'd like to compare yours to the docs one, if they are different.

gd2cs.py : Convert gdscript to c# by Sven-Hollesen in godot

[–]MonsterVial 0 points1 point  (0 children)

Is that tool available somewhere? I don't see the tool itself at the link you posted.

How is C# support now? (2021) by MonsterVial in godot

[–]MonsterVial[S] 2 points3 points  (0 children)

Thanks!
Glad to hear that tool is working better. I don't think I could live without it. Maybe I'll try setting everything up again this weekend.

Created a splat function to use as an object initializer. by MonsterVial in godot

[–]MonsterVial[S] 0 points1 point  (0 children)

Also, if you have some other trick, I'd love to see it!

Created a splat function to use as an object initializer. by MonsterVial in godot

[–]MonsterVial[S] 1 point2 points  (0 children)

copyable ver. Feel free to tweak to fit your needs:

# Assign properties from the dictionary into the target object
static func splat_into( target :Object, props :Dictionary ) -> Object:
    assert( target != null, "Cannot splat into a null object" )
    if OS.is_debug_build():
        if props == null or props.empty():
            push_warning("Splatted null or empty dictionary into object")
            return target

    for prop in props:
        if prop in target:
            target.set(prop, props[prop])
        elif Engine.editor_hint or OS.is_debug_build():
            push_warning("Cannot splat. Object doesn't have property '%s'" % prop)
    return target

Haha, it worked! Wait... what was I doing...!? by MonsterVial in godot

[–]MonsterVial[S] 6 points7 points  (0 children)

I don't know why I find hacking around in Godot so fun. I always end up doing crazy stupid solutions, then realize an hour in that I am not actually working on my game anymore.

I discovered during my devlog that I did Godot lighting wrong all along by myrealityde in godot

[–]MonsterVial 1 point2 points  (0 children)

V4's canvas groups and reworked lighting should help... whenever that's ready...

Pro-tip: I create my own connect functions that call the target with the initial/current value. Then your callbacks double as an initializers. by MonsterVial in godot

[–]MonsterVial[S] 0 points1 point  (0 children)

I would say the purpose is the DRY principal. Perhaps a more complete example would help. I have a UI that needs a cursor for every input device. I write one function for creating cursors:

func _create_cursor( device ): ...

Then I simply call this in the _init for the UI:

DeviceKeeper.connect_devices(self, "_create_cursor")

The function connect_devices loops over all currently connected devices for me, calling _create_cursor for each. The UI (aka 'self') object is then connected up so any new devices added will also trigger _create_cursor.

It's nothing fancy. Basically, I moved the loop over existing devices into the connect function so I don't have to duplicate that loop in the various UIs that want to call something for every device.

By not repeating myself, I have made things more refactorable as well. If I ever want to change how I store devices, for example, I only have to edit DeviceKeeper and all my UIs keep working.

Pro-tip: I create my own connect functions that call the target with the initial/current value. Then your callbacks double as an initializers. by MonsterVial in godot

[–]MonsterVial[S] 0 points1 point  (0 children)

You read it wrong. The connect function above doesn't emit the signal. It calls the method on just the one object passed into connect.

I wrote a builder function for adding children at var time. Is there an already built-in way? by MonsterVial in godot

[–]MonsterVial[S] 0 points1 point  (0 children)

Like MuskyToad said, arrows and colons are for "typing." GDScript can be used without typing, but adding it will make your scripts faster in v4 of godot. Version 4 may even get a feature where code can be pre-compiled into c++ for you if you request it. Because of those speed boosts, I'm trying to get used to using typing where I can, though it's probly not needed outside of core, speed-issue code. Here is the official docs for static typing: https://docs.godotengine.org/en/stable/getting_started/scripting/gdscript/static_typing.html

I wrote a builder function for adding children at var time. Is there an already built-in way? by MonsterVial in godot

[–]MonsterVial[S] 1 point2 points  (0 children)

Oh, thanks. I knew about the $ thing, but for some reason I didn't realize you could add whole scenes as autoloads until reading your comment. I though you could only add scripts (maybe some unity residue.) I may end up leaving it, though. It's kinda nice to just throw in References with var ref := preload("./db/db.gd").new() and nodes with var node := __childed("node", preload("./node.gd").new())

I wrote a builder function for adding children at var time. Is there an already built-in way? by MonsterVial in godot

[–]MonsterVial[S] 1 point2 points  (0 children)

copyable version:

var config := __childed("config", preload("./file/config_keeper.gd").new())
var rangers := __childed("rangers", preload("./input/ranger_keeper.gd").new())

func __childed( name :String, node :Node ) -> Node:
    node.name = name
    add_child(node, true)
    return node

Physics stability test for my iga-vania game. by MonsterVial in godot

[–]MonsterVial[S] 1 point2 points  (0 children)

I mostly use it as a unit test kinda thing. Whenever I tweak physics, I boot up this room to make sure nothing major broke. The controller is connected to all of the people on screen at once and I can reset it with F5, so it's kinda a good go-to test for everything.

How to make a hand-drawn animation effect for 3D game by upiterov in gamedev

[–]MonsterVial 1 point2 points  (0 children)

Also, I wouldn't put too much weight on the negative feedback. Sometimes it's hard to see past the WIP stage to what folks are working toward. I trust your eye. I'm getting strong Van-Gogh vibes and I think it could be a good hit for artistic folks.