<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://www.htx.abildgaard.com/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://www.htx.abildgaard.com/feed.php">
        <title>HTX Frederikshavn &amp; Hjørring - ddu:godot</title>
        <description>Det har aldrig været sjovere at være nørd</description>
        <link>https://www.htx.abildgaard.com/</link>
        <image rdf:resource="https://www.htx.abildgaard.com/lib/exe/fetch.php?media=wiki:logo.png" />
       <dc:date>2026-09-11T19:29:07+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:addingaudio&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ai_behaviortree&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ai_fsm_2&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ai_fsm&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:animation&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:animationplayer&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ball_bounce&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:basics&amp;rev=1787639481&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:collect_coins&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:collisions&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:debugging&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:dialog_system&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:dialogue_manager&amp;rev=1776411251&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:display_score&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:dying_on_plaform_1&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:export_vars&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:falling_spikes&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_basics&amp;rev=1787648594&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_exercises&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_export&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_hyldevare&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_tutorials&amp;rev=1787638594&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:install&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:inventory_system&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:item_pickup&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:level_design&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:meleeattack2d&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:multiple_levels&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:node_types&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:object_types&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:paralax_bg&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:platforms&amp;rev=1787646085&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:player_animation_control&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:player_animation&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:player_movement&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:pushing_a_rock&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:savegames&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:sceneskift&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:shortcuts&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:signals&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:singleton&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:sound_fx_and_ambient&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:soundfx&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:tilemaps&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:timers_in_godot&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:timers&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:updownleftright_from_vector&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:waypoint_follow&amp;rev=1775935086&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ysorting&amp;rev=1775935086&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://www.htx.abildgaard.com/lib/exe/fetch.php?media=wiki:logo.png">
        <title>HTX Frederikshavn & Hjørring</title>
        <link>https://www.htx.abildgaard.com/</link>
        <url>https://www.htx.abildgaard.com/lib/exe/fetch.php?media=wiki:logo.png</url>
    </image>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:addingaudio&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>addingaudio</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:addingaudio&amp;rev=1775935086&amp;do=diff</link>
        <description>Adding Audio

==== 

	*  Tilføj AudioStreamPlayer2D til World, rename evt. til „Music“ for en beskrivende label.
	*  Tilføj dit audiotrack til denne node.
	*  Marker autoplay
	*  Music Autolooper ikke pr. default. Dobbeltklick på lydfil, marker</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ai_behaviortree&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ai_behaviortree</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ai_behaviortree&amp;rev=1775935086&amp;do=diff</link>
        <description>AI ved BehaviorTree

Et behavior tree (BT) er, som navnet antyder, en træstruktur der er opbygget af knuder og blade. 
Knuderne (Nodes) beskriver det logiske flow i træet, og blade (Leaves) beskriver konkrete handlinger (Tasks).

Træets struktur er hierarkisk, hvilket betyder at hver node kan have en eller flere underordnede noder, kaldet *children* (child nodes). En node der ligger over andre noder kaldes en *parent node*.</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ai_fsm_2&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ai_fsm_2</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ai_fsm_2&amp;rev=1775935086&amp;do=diff</link>
        <description>StateMachines v2

	*  &lt;https://github.com/THBA-HTX/fsm_demo&gt;

Princip:


using Godot;
using System;

public partial class AIController : CharacterBody2D
{
    [Export] public float SpeedWalk = 1.5f;
    [Export] public float SpeedRun = 10f;
    private float CurrentSpeed;

    public Boolean IsRunning = false;
    public Boolean IsStopped = false;

    public CharacterBody2D Player;  // reference til vores Spiller
    public float PlayerDistance;

    Vector2 NextDest;   // Hvad er næste destina…</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ai_fsm&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ai_fsm</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ai_fsm&amp;rev=1775935086&amp;do=diff</link>
        <description>AI ved Finite State Machine (FSM)

StateMachine er baseret på denne video, se video og forsøg at implementere statemachine.

	*  StateMachine C# Godot

Opgaver

	*  Opret en Tilstandsmaskine(FSM) og Tilstande (States) ud fra ovenstående tutorials. (Det er ikke nødvendigt at se disse videoer i deres fulde længde) Hav fokus på FSM delen, og mindre fokus på det grafiske, animationer m.m.</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:animation&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>animation</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:animation&amp;rev=1775935086&amp;do=diff</link>
        <description>Animation

I denne øvelse vil du lære at anvende eksisterende spritesheet til animering af Player.
Vi vil i denne øvelse anvende en del af Sunnyland&#039;s grafik pakke.
Jeg har lavet en zip fil af de ting vi skal bruge her: 

Udgangspunkt

Som udgangspunkt for øvelsen bygger vi videre fra sidste gang hvor du har en Player som kan bevæge sig og hoppe fra platform til platform.</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:animationplayer&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>animationplayer</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:animationplayer&amp;rev=1775935086&amp;do=diff</link>
        <description>AnimationPlayer &amp; Bevægelige platforme

Her gennemgåes Godot 4’s Animation Player til at animere objekter med egenskaber som position og gennemsigtighed, samt kontrollere animationer gennem scripting.

	*  Opret AnimationNode2D
	*  Opret Sprite2D</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ball_bounce&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ball_bounce</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ball_bounce&amp;rev=1775935086&amp;do=diff</link>
        <description>Bouncing Ball

I denne øvelse skal du lave noget der minder lidt om spillene Arkanoid og Krak-Out til Commmodore64 platformformen
    
	*  Hvilken genre er disse spil ?
	*  Inscribed Layer
		*  Game-mechanics
			*  (Vælg ét af spillene, og beskriv game-mechanics ud fra you-tube videoen)</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:basics&amp;rev=1787639481&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-08-25T06:31:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>basics</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:basics&amp;rev=1787639481&amp;do=diff</link>
        <description>Godot #1 - Basics

	*  Godot interface
	*  Node typer &amp; egenskaber
		*  StaticBody2D
		*  RidgidBody2D
		*  CharacterBody2D + movement script
		*  Area2D

	*  Collisioner
	*  Signals (OnBodyEntered)
	*  KillZone

----------

Godot #1 - fortsat

	*  Node internals</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:collect_coins&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>collect_coins</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:collect_coins&amp;rev=1775935086&amp;do=diff</link>
        <description>Collect coins

	*  Opret selvstændig scene (som vi senere kan lave flere instanser af, flere coins)
	*  (Area2D Node)
		*  Animated Sprite2D
		*  CollisionShape2D</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:collisions&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>collisions</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:collisions&amp;rev=1775935086&amp;do=diff</link>
        <description>Collisions

Ud fra et givent Objekts perspektiv kan vi sige følgende:

	*  Layers bestemmer hvem der kan detektere mig. 
		*  (dvs. Objektet har en tilstedeværelse i et givent lag)

	*  Masks bestemmer hvem jeg kan detektere. (ønsker at detektere)</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:debugging&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>debugging</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:debugging&amp;rev=1775935086&amp;do=diff</link>
        <description>Debugging


  GD.Print(&quot;This is a print to console&quot;);
  GD.PushError(&quot;This is an error&quot;);
  GD.PushWarning(&quot;This is a warning&quot;);


Se &#039;Output&#039; i nederste venstre hjørne.

----------</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:dialog_system&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dialog_system</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:dialog_system&amp;rev=1775935086&amp;do=diff</link>
        <description>Godot Dialog Manager

Godot har sin egen dialog manager som kan installeres fra &#039;Assets Lib&#039;.

Enable plugin i project settings.  Project -&gt; Project settings -&gt; Plugins

----------</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:dialogue_manager&amp;rev=1776411251&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-17T07:34:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dialogue_manager</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:dialogue_manager&amp;rev=1776411251&amp;do=diff</link>
        <description>Godot Dialogue Manager 3 med C#

Denne guide viser et simpelt eksempel af brug af Dialogue Manager 3 i Godot 4 med C#.

	*  Dialog Manager 3 - Dokumentation  (its pretty good actually)
	*  Video : &lt;https://www.youtube.com/watch?v=U3Mimia-904&gt;
	*  Dialogue Manager 3

----------

Installer Dialogue Manager 3

(easy peasy, japanesee)

	*  Åbn AssetLib i Godot</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:display_score&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>display_score</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:display_score&amp;rev=1775935086&amp;do=diff</link>
        <description>Display The Score

Opret GUI

	*  Global
	*  Canvas
	*  Signal

CanvasLayer - et lag som lægger sig oven på hele Scenen.

	*  CanvasLayer
		*  Control Node
			*  Label



	*  Resize Layer
		*  Placering af Label
		*  ThemeOveride
			*  Font
			*  Size</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:dying_on_plaform_1&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dying_on_plaform_1</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:dying_on_plaform_1&amp;rev=1775935086&amp;do=diff</link>
        <description>Dying from falling

	*  Tilføj camera sub node ( enable smoothing..  cuz it looks cool.)
	*  Ændre i Limits således camera ikke falder uendeligt sammen med Player.. )
	*  Ny scene KILLZONE (FN genbrug) (zone hvor spilleren markeres som død)
		*  (OBS: vil laver ikke en collisionsShape på denne, da denne skal kunne genbruges ved forskellige fysiske former)</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:export_vars&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>export_vars</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:export_vars&amp;rev=1775935086&amp;do=diff</link>
        <description>Export variables and hints


[Export(PropertyHint.File, &quot;*.json,&quot;)]
public string _jsonFilePath { get; set; }</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:falling_spikes&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>falling_spikes</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:falling_spikes&amp;rev=1775935086&amp;do=diff</link>
        <description>Falling Spikes som Game Mechanic – Enkelt &amp; Effektivt

At bruge falling spikes i et platformspil er en simpel måde at tilføre spænding, timing og konsekvens til gameplayet. De tvinger spilleren til at holde øje med omgivelserne, planlægge deres bevægelser og reagere hurtigt – alt sammen kerneelementer i god platformdesign. Spikes, der aktiveres ved bevægelse , skaber også en følelse af, at verden er</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_basics&amp;rev=1787648594&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-08-25T09:03:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>godot_basics</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_basics&amp;rev=1787648594&amp;do=diff</link>
        <description>Basics

Placering af projekter

Når vi arbejder med Godot og senere versionsstyring ønsker vi at undgå at gemme på et OneDrive.

Opret derfor en folder i roden af dit C drev. til alle dine Godot Projekter. 

fx. c:\dduProjects

----------

Navngivning af filer m.m.</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_exercises&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>godot_exercises</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_exercises&amp;rev=1775935086&amp;do=diff</link>
        <description>Exercises

The Office DVD Logo Challenge

	*  &lt;https://www.youtube.com/watch?v=QOtuX0jL85Y&gt;

Bouncing Ball (Game)

	*  Ball bounce

	*  Movement
	*  Animation</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_export&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>godot_export</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_export&amp;rev=1775935086&amp;do=diff</link>
        <description>Godot Export Game

	*  Editor -&gt; Manage target platforms -&gt; Download templates (it may take a while)
	*  Vælg din target platform. (fx. Windows)
	*  Udfyld de felter som i finder relevante:
		*  Company name
		*  Game name
		*  Version
		*  etc.


Export Project</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_hyldevare&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>godot_hyldevare</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_hyldevare&amp;rev=1775935086&amp;do=diff</link>
        <description>Godot hyldevarer



Her vil vi i fællesskab udvikle nogle komponenter til Godot som vi kan gen-bruge på tværs af vores projekter. Vi kalder dem for Godot „Hylde varer“.


Udfodringer/Emne

	*  Tags/Meta tags
	*  Identificere instancer af subscene</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_tutorials&amp;rev=1787638594&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-08-25T06:16:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>godot_tutorials</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:godot_tutorials&amp;rev=1787638594&amp;do=diff</link>
        <description>*  AnimationPlayer exercises

Før du starter

	*  Gem ikke Godot, eller dine projekter på One-Drive. (Brug aldrig One-Drive)
	*  Opret istedet en folder i roden af din harddisk fx. c:\godot
	*  Brug ikke mellemrum, eller specielle karakter (herunder danske karaktere i din navngivning i Godot)</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:install&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>install</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:install&amp;rev=1775935086&amp;do=diff</link>
        <description>Godot 3D Engine

	*  Hent C# development Kit her : &lt;https://dotnet.microsoft.com/en-us/download&gt;
	*  Godot 3D Engine (download .NET version)
		*  Hent .NET version ( pt. version 4.3 )

	*  Installer Godot (pak ud) i fx. c:\godot   (undgå undermapper af ONEDRIVE)

	*  Hent Git her : &lt;https://git-scm.com/downloads&gt;
	*  Hent Github ( dvs GitHub Desktop ), og lav en konto på Github her :</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:inventory_system&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>inventory_system</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:inventory_system&amp;rev=1775935086&amp;do=diff</link>
        <description>Inventory system



Her vil vi i fælleskab udvikle et inventory system i Godot C#. 
Krav til vores inventory er følgende:

	*  Statisk antal pladser inventory
	*  &#039;Stack-able&#039; items. dvs vi skal kunne opsummere items af samme type.
	*  Inventory GUI</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:item_pickup&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>item_pickup</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:item_pickup&amp;rev=1775935086&amp;do=diff</link>
        <description>Item Pickup

	*  Ny scene
	*  Area2D ( we dont want to collide, but want an area to detect collision)
		*  AnimatedSprite2D
		*  ColliosionShape2D


Tilføj X antal coints (drag coin scene fra filesystem)

Tid til at lytte :))

	*  Tilføj script til mønt (default template, placering i Scripts)</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:level_design&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>level_design</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:level_design&amp;rev=1775935086&amp;do=diff</link>
        <description>Level design

I denne øvelse vil du lære om:

	*  Sprites
	*  Tilesets
	*  Tilemaps
	*  Layers
	*  (ysort)

----------

Ressourcer

I denne øvelse vil vi benytte os af en gratis grafik-pakke ved navn &#039;Mystic Woods&#039;.
Hent denne pakke via nedenstående link.</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:meleeattack2d&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>meleeattack2d</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:meleeattack2d&amp;rev=1775935086&amp;do=diff</link>
        <description>Melee Attack 2D


Så er det Basketid!



I skal i jeres Assynkron UV, arbejde selvstændigt med at implementere et Melee Angreb, dvs. et short ranged angreb med næver, sværd el. lign. i Godot.

I kan anvende nedenståene game assets:

	*  Itch.io - Warrior Sprite Pack (FREE)
	*  Itch.io - Skeleton Sprite Pack (FREE)

	*</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:multiple_levels&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>multiple_levels</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:multiple_levels&amp;rev=1775935086&amp;do=diff</link>
        <description>Flere Scener (Levels)



----------

SceneManager klasse

Lav et Area2D med en collision shape der fange når en Player er nået i mål og skal skifte scene.



Tilføj nedenstående script:


using Godot;
using System;

using Godot;
using System.Threading.Tasks;

public partial class SceneManager : CanvasLayer
{
	private ColorRect _fadeRect;

	private string _nextScene;
	private string _spawnPoint;

	public override void _Ready()
	{
		_fadeRect = GetNode&lt;ColorRect&gt;(&quot;ColorRect&quot;);
		_fadeRect.Modulate…</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:node_types&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>node_types</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:node_types&amp;rev=1775935086&amp;do=diff</link>
        <description>Node typer

	*  _Ready
		*  Kaldes når node tilføjes til scene. (dvs. en gang pr. Node)

	*  _Process
		*  Kaldes hver frame. (men der er ingen garantier hvor ofte den bliver kaldt...det er maskin afhængigt)

	*  _ProcessPhysics
		*  Kaldes hver frame. Med fast intervaller</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:object_types&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>object_types</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:object_types&amp;rev=1775935086&amp;do=diff</link>
        <description>RigidBody vs KinematicBody/CharacterBody

This applies for both the 2D and 3D versions of these classes.

The main difference between RigidBody and KinematicBody/CharacterBody is who is in charge of moving the object.

KinematicBody/CharacterBody

With KinematicBody/CharacterBody your code is responsible for moving the object, using move_and_slide et.al. methods. With RigidBody the physics engine is responsible for moving the object.</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:paralax_bg&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>paralax_bg</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:paralax_bg&amp;rev=1775935086&amp;do=diff</link>
        <description>Parallax Layers i Godot

Hvad er Parallax?



Parallax er en teknik, hvor baggrunden i et 2D-spil bevæger sig langsommere end forgrunden, når spilleren/kameraet flytter sig.  
Det giver en illusion af dybde og gør spillet mere levende.  

----------</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:platforms&amp;rev=1787646085&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-08-25T08:21:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>platforms</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:platforms&amp;rev=1787646085&amp;do=diff</link>
        <description>Platforms

	*  Ny node 
	*  Opret scene: platform
		*  AnimatiableBody2D
			*  Sprite2D
			*  CollisionsShape2D (Rectangle)



	*  Sæt X ved one-way collision på platform CollisionShape
	*  Gem scene

	*  Nu har du en platform scene du kan bruge igen og igen.</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:player_animation_control&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>player_animation_control</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:player_animation_control&amp;rev=1775935086&amp;do=diff</link>
        <description>Player Animation Styring

I nedenstående er animationerne for „Jump“, „Run“ og „Idle“ håndteret.
Ønsker man styring af yderligere antal animation at overveje at anvende en dedikeret tilstandsmaskine til formålet.
Bemærk Jump ikke er styret udfra fra velocity.Y, men af Player action, samt IsOnFloor().</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:player_animation&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>player_animation</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:player_animation&amp;rev=1775935086&amp;do=diff</link>
        <description>Player Animation

Animation til vores Player (eller andet i Godot).

For at lave Animation til vores Player skal vi første enten lave, eller download et spritesheet med de relevante animationer i.
Jeg vælger her at anvende karakteren fra Mystic Woods.</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:player_movement&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>player_movement</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:player_movement&amp;rev=1775935086&amp;do=diff</link>
        <description>Player movement

I denne tutorial vil du lære at:

	*  Flytte Player (eller andre objekter) rundt på en 2D scene.
	*  Animation
	*  Keyboard Input

Ressourcer

Nedenstående spritesheet indeholder Player animation idle, walk, attack (venstre/højre, op og ned), samt death of player.</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:pushing_a_rock&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>pushing_a_rock</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:pushing_a_rock&amp;rev=1775935086&amp;do=diff</link>
        <description>Pushing a rock

(aka. CharacterBody2D til RigidBody2D interaktion)


   for (int i = 0; i &lt; GetSlideCollisionCount(); i++)
   {
	var collision = GetSlideCollision(i);
	var collider = collision.GetCollider();
	if ( collider is RigidBody2D )
	     ((RigidBody2D)collider).ApplyCentralImpulse(-collision.GetNormal() * pushForce);
	}
   }</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:savegames&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>savegames</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:savegames&amp;rev=1775935086&amp;do=diff</link>
        <description>Savegames

ConfigFiles

Serialized Objects

Resources</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:sceneskift&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>sceneskift</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:sceneskift&amp;rev=1775935086&amp;do=diff</link>
        <description>Sceneskift




GetTree().ChangeSceneToFile(&quot;res://Scenes/level2.tscn&quot;);</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:shortcuts&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>shortcuts</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:shortcuts&amp;rev=1775935086&amp;do=diff</link>
        <description>Genveje i Godot
 Genvej  Beskrivelse   F11  Søg i Hjælp   F5  Kør projekt  F6  Kør nuværende scene  F7  Pause scene  F8  Stop 
Scene Tree
 Genvej  Beskrivelse  Ctrl + a  Add Child Node  Ctrl + d   Dupliker markerede node (inkl. sub-nodes)   Ctrl + F2</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:signals&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>signals</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:signals&amp;rev=1775935086&amp;do=diff</link>
        <description>Signaler

Eksempel

Opsamling af &#039;Coin&#039;

Collectible Objects i Godot 2D, C#

1. Opret Collectible-scenen

	*  Opret en ny scene med root-node `Area2D`, kald den fx Coin.
	*  Tilføj som børn:
		*  `Sprite2D` (med dit mønt- eller æble-billede)
		*</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:singleton&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>singleton</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:singleton&amp;rev=1775935086&amp;do=diff</link>
        <description>Singleton (Autoload)

For at kunne gemme data/info som er persistent, ved scene-skift kan der anvendes en Singleton klasse. 
(Da GD sproget ikke understøtter singleton) har Godot valgt at løse dette ved at man kan registrere en klasse til &#039;Autoload&#039;. En klasse registreret til Autoload kan bibeholde sine data, når skiftes mellem scener.</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:sound_fx_and_ambient&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>sound_fx_and_ambient</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:sound_fx_and_ambient&amp;rev=1775935086&amp;do=diff</link>
        <description>SoundFX og baggrundsmusik

Hvorfor bruge lyd og musik i spil?

Lyd og musik spiller en afgørende rolle i spiludvikling. Det handler om at forbedre selve spiloplevelsen. Lyd giver feedback til spilleren, understøtter stemning og atmosfære og kan bruges til at signalere vigtige hændelser i spillet.</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:soundfx&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>soundfx</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:soundfx&amp;rev=1775935086&amp;do=diff</link>
        <description>Lydeffekter i Godot

I denne tutorial stifter i bekendtskab med nedenstående elementer:

	*  AudioStreamPlayer
	*  Buttons &amp; Signals
	*  Labels
	*  Containere ( MarginContainer &amp; VBoxContainer )
	*  Slider (Horizontal)

----------

	*  Youtube video :</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:tilemaps&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>tilemaps</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:tilemaps&amp;rev=1775935086&amp;do=diff</link>
        <description>Tilemaps in 4.3

Verden bygges op af forskellige ”tiles” som en mosaik. Den asset vi maler med et stort billede af tiles som vi kalder et a et ”tile-set” (en mængde tiles som er knyttetsammen i en fil, hvor der kun er én af hver tile) (dette skæres op)</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:timers_in_godot&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>timers_in_godot</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:timers_in_godot&amp;rev=1775935086&amp;do=diff</link>
        <description>Timers, Boost &amp; Cooldown periode

Formål

I denne tutorial ønsker jeg at tilføje &#039;Boost&#039; funktionalitet til min Player. Dvs. der kan aktiveres et Boost som hæver Speed og JumpVelocity i et begrænset tidsrum som vil tillade Player at løse nogle udfordringer som Playere ellers ikke ville kunne løse.</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:timers&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>timers</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:timers&amp;rev=1775935086&amp;do=diff</link>
        <description>Timers

Opret time i Node tree

	*  Add node -&gt; Timer
	*  Configure timer i inspector
		*  OneShot: true/false
		*  WaitTime
		*  AutoStart: true/false


tilgå Timer i kode ved GetNode


Timer delayTimer = GetNode&lt;Timer&gt;(&quot;Timer&quot;);


(brug ved signal)</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:updownleftright_from_vector&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>updownleftright_from_vector</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:updownleftright_from_vector&amp;rev=1775935086&amp;do=diff</link>
        <description>UP, DOWN, LEFT, RIGHT fra Velocity vector

Scenarie: 

Du har en NPC eller en Player som bevæger sig efter en Vector v, og du skal bestemme hvilken af de fire retning der skal anvendes ift. AnimatedSprite (ell. andet)


Vector v; // din NPC/Player velocity
String dir;

if (abs(v.x) &gt; abs(v.y)) {
   dir = (v.x &gt; 0) ? &quot;RIGHT&quot; : &quot;LEFT&quot;;
} else {
   dir = (v.y &gt; 0) ? &quot;DOWN&quot; : &quot;UP&quot;;
}</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:waypoint_follow&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>waypoint_follow</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:waypoint_follow&amp;rev=1775935086&amp;do=diff</link>
        <description>Enemy following waypoints

Opret først en &#039;NPC&#039; i form af en CharacterBody2D. 
Tilføj et Script til NPC f.eks. EnemyMovement.cs (som nedarver fra CharacterBody2D).

obs.! Enable visible collition shapes under Debug -&gt; Visible Collision Shapes.




using Godot;
using System;

public partial class EnemyMovement : CharacterBody2D
{
	public const float Speed = 90.0f;
	[Export]
	public Node2D[] waypoints = new Node2D[3];
	public int currentWaypointIndex = 0;
	public Vector2 targetPosition;

	public o…</description>
    </item>
    <item rdf:about="https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ysorting&amp;rev=1775935086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-11T19:18:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ysorting</title>
        <link>https://www.htx.abildgaard.com/doku.php?id=ddu:godot:ysorting&amp;rev=1775935086&amp;do=diff</link>
        <description>Y-sorting

	*  Physics layer
	*  Add &#039;collision&#039; til Player
	*  Player -&gt; Ordering -&gt; Y-sorting = On
	*  World -&gt; Odering -&gt; Y-sorting = On
	*  TileMap (vælg layer, dvs det lag hvor de ting du kan gå foran og ind bag ved e.g. trær,buske og sten), enable Y-sorting</description>
    </item>
</rdf:RDF>
