From 3e4483c67136d799c60bca2f1b412252de2dec66 Mon Sep 17 00:00:00 2001 From: Nathan Date: Sun, 22 Oct 2017 18:08:36 +0200 Subject: [PATCH] Remove logs folders from ui demos fix broken links on the ui life bar code tutorial --- .../step_by_step/files/ui_code_life_bar.zip | Bin 193671 -> 190206 bytes learning/step_by_step/files/ui_gui_design.zip | Bin 190204 -> 189486 bytes .../files/ui_main_menu_design.zip | Bin 91879 -> 91346 bytes learning/step_by_step/ui_code_a_life_bar.rst | 10 +++++----- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/learning/step_by_step/files/ui_code_life_bar.zip b/learning/step_by_step/files/ui_code_life_bar.zip index 9a6de659ff7e8c02f538250531e01fd87737e666..6c6b3b7d49a51dd791efc482a4774d150ae8ceb0 100644 GIT binary patch delta 1155 zcmZ8gX-HI26rT4zeQKjJf>skznqj%2(nM5dgGESYyN;-pmb5_qh{C9FZ4n|SA@GC{ z6hwcbl@?MnN(+oc$EA&ObX;mQbw&fB$U67U)HuFB_kHL4&U(+Sv}>nYv{ftR+^Ved zxrqxEJ?N~^~ zRs_=<3k=HX_rb!`ryX{s+&D}8uNXws6MY8`LYaD`S}MEXRHh14Wt*MZ8}DH8p~-H9 zBO!zCf5IF}v?3Q*Hq+4_ETCIfgepH8=ZkQ+#}GxsoDl79R^Njx?AR`(MR=Pj&Ir=w zOIn(AB9x+gu?ivCu1IHkS$iqR1=xbxVB=Jub_bfzrPj(oYP9JH+lk@VQkPM^(c*Sr%3*{8zI+#Q0J zmJea4oP5q>Dv-}#P|;$ls)jEm53?ZcqQ|7AgCAfFN%Fecxn{Q@{|axcT?i7r1o2g> zAczMKV`cw@F{H|64?syRm`4r=H*tB4hwyMJMofM<3_QoRTH(lI9&RNgS%H0(re^t!tSOm-Whx%32XX89xvgyiT)D Mqvr?K`WhVeFGjbe`Tzg` delta 4401 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 R7$g`Tb2Bj9j9>&>3;?wFg)aaA delta 791 zcmca~lJ)sn)(JM#)uI>$Hu?mv6lP$US`^^TfCOYGA2gO$$jMJH)(`MzW)T5OaWH5U z2Y9n>s?FXEIsW$Kzz9H-Kr>(^;mbnuGb ztfdDw|4P`wx@BFZOJmRa|DNup-rrv|y?5Uib#~dd@^~SS%{{SZ4olB%75bpKh_87& zQ}5T%l6dJ`+r9#2M#>Joj zmSAL%U@+&HtOv3PMlb#{3Cs`hW@NHwz!3v*gF)t802!=@93RN$FaCPtBC`1qd#2mP zG3qcKT{U^*O7-cJ;~4#z_N)b(GW~BHV>FZI`st2|j55>9;u%HQ&eX>{0X;e)p3#IU z5iFrR{Ut~O5gKCCB@-Csm==I#b*HB#0A=GYuDSsXD`5DTFujCIyoqA;6R<^b`-;mT zt9qIIZ-Hpz$$2+EOowM>0SYZ0p7)I~ucas?Tm}b8OiRezgYsEQTC6>`a&N?uFD5eTOka@97|DFdAIy`UE}p^|#=IZ`%Ii*HwB(awkYYH&!@$59#Rv>N0EyiS A(*OVf diff --git a/learning/step_by_step/ui_code_a_life_bar.rst b/learning/step_by_step/ui_code_a_life_bar.rst index 3986d2cef..cf81c8613 100644 --- a/learning/step_by_step/ui_code_a_life_bar.rst +++ b/learning/step_by_step/ui_code_a_life_bar.rst @@ -53,7 +53,7 @@ To do this, we will use **signals**. .. note:: Signals are Godot's version of the Observer pattern. They allow us to send out some message. Other nodes can connect to the object that **emits** the signal and receive the information. It's a powerful tool we use a lot for User Interface and achievement systems. You don't want to use them everywhere though. Connecting two nodes adds some coupling between them. When there's a lot of connections, they become hard to manage. - For more information on check out the [ signals video tutorial ](https://youtu.be/l0BkQxF7X3E) on GDquest. + For more information on check out the `signals video tutorial `_ on GDquest. Download and explore the start project -------------------------------------- @@ -193,8 +193,8 @@ of information. And you will update the state of your connected node .. note:: The Observer pattern, that signals derive from, still adds a bit of coupling between node branches. But it's generally lighter and more secure than accessing nodes directly to communicate between two separate classes. It can be okay for a parent node to get values from its children. But you'll want to favor signals if you're working with two separate branches. - Read Game Programming Patterns for more information on the [ Observer pattern ](http://gameprogrammingpatterns.com/observer.html). - The [ full book ](http://gameprogrammingpatterns.com/contents.html) is available online for free. + Read Game Programming Patterns for more information on the `Observer pattern `_. + The `full book `_ is available online for free. With this in mind let's connect the ``GUI`` to the ``Player``. Click on the ``Player`` node in the scene dock to select it. Head down to the @@ -240,7 +240,7 @@ at the bottom of the window. Godot creates the method inside the ``GUI`` node. The script editor opens with the cursor inside a new ``_on_player_health_changed`` function. -.. note:: +.. note:: When you connect nodes from the editor, Godot generates a method name with the following pattern: ``_on_EmitterName_signal_name``. @@ -294,7 +294,7 @@ This method needs to: number_label.text = str(new_value) bar.value = new_value -.. tip:: +.. tip:: ``str`` is a built-in function that converts about any value to text. ``Number``'s ``text`` property requires a string so we can't