×

Langue

Fermer
Atelier 801
  • Forums
  • Dev Tracker
  • Connexion
    • English Français
      Português do Brasil Español
      Türkçe Polski
      Magyar Română
      العربية Skandinavisk
      Nederlands Deutsch
      Bahasa Indonesia Русский
      中文 Filipino
      Lietuvių kalba 日本語
      Suomi עברית
      Italiano Česky
      Hrvatski Slovensky
      Български Latviešu
      Estonian
  • Langue
  • Forums
  • /
  • Transformice
  • /
  • Modules
  • /
  • [تعليم] لوا والالعاب الصغيرة
1 / 3 › »
[تعليم] لوا والالعاب الصغيرة
Jack_sparrow
« Censeur »
1500486720000
    • Jack_sparrow#8381
    • Profil
    • Derniers messages
    • Tribu
#1
  13
  • نسخة 1
  • المعرفّات
  • شجرة لوا

http://img.atelier801.com/f024f1f9.png


الاسئلة الشائعة:-
مَا هِي الُ Lua ؟
Lua (قادمة من كلمة " قمر " فِي اللُّغة البرتغالية) هي لغة برمجة خفيفة صممت لتكون لغة برمجة نصية ذات دلالات موسعة.
لماذا تم استخدام لغة البرمجة Lua, ولم يتم استخدام بعض اللغات الأخرى ؟
نظرا لكونها خفيفة ذات تركيب سهل التعلم, ومصممة ليتم استخدامها كلغة برمجة لواجهات برمجة التطبيقات التي توضع في برامج أخرى. هذه اللغة معروفة جيدا وتحوي على العديد من قوائم الوظائف والصلاحيات الخاصة بهذه اللغة على شبكة الأنترنت.
كيف يمكنني الحصول على موافقة للعبة صغيرة طورتها بنفسي؟
فقط أعضاء فريق البرمجيات التركيبية يمكنهم إدارة الألعاب الصغيرة. إذا كنت ترغب في الحصول على موافقة للعبتك الصغيرة, يمكنك إما تقديم طلب للانضمام إلى الفريق أو الطلب من أحد أعضاء الفريق لتشغيلها لك.
يحتوي هذا القسم على مجموعة متنوعة من قطع مختلفة من المعلومات التي يمكن أن تكون مفيدة عند وضع برمجية تركيبية، مثل تتضمن التعدادات، رموز الألوان، معرفات، وأكثر من ذلك.

اكواد الالوان

رموز الألوان المذكورة هنا هي التي يشيع استخدامها في ترانسفورمايس، فإن كلا من اللعبة وواجهة المستخدم. للحصول على قائمة أكثر اكتمالا من رموز الألوان المستخدمة في اللعبة، يرجى زيارة this thread.

#6A7495 لون خلفية اللعبة.
#324650 واجهة مستخدم اللعبة.
#465a6e محدد واجهة المستخدم.

هذه هي علامات اللون التي يمكن استخدامها في اللعبة، مثل داخل tfm.exec.chatMessage () وui.addTextArea (). أنها لا تحتاج إلى أن تنتهي مثل علامات HTML، ولون كل من النص في سلسلة بعد البرمجة التركيبية، على سبيل المثال "<J> help".

#2F7FCC <BV> اسماء طاقم الخرائط.
#CB546B <R> الاخطاء.
#6C77C1 <BL> رسائل النظام الافتراضي.
#BABD2F <J> المساعدة ومعلومات اخرى.
#C2C2DA <N> لون خط الشات المعتاد.
#606090 <G> اصدقاء غير متصلين.
#009D9D <V> لون خط الدردشة.
#2ECF73 <VP> كلمات البنامج التعليمى.
#C53DFF <VI> لم يتم العثور على استخدام.
#ED67EA <ROSE> رسائل الخادم والمدراء.
#98E2EB <CH> خط لون الشامان الازرق.
#A4CF9E <T> شات القبيلة.


معرفات التعبيرات

هذه هي قائمة من الحركات وتتضمن التعدادات المقابلة. اجعل في الاعتبار أن لديه جدول tfm.enum.emote قائمة بجميع أسماء الحركات وتتضمن التعدادات.

0 - رقص
1 - ضحك
2 - بكاء
3 - تقبيل
4 - غضب
5 - تصفيق
6 - نوم
7 - حزن
8 - جلوس
9 - حلويات
10 - التلويح بالعلم


معّرفات ادوات الشامان

في حين tfm.enum.shamanObject هي قائمة سهلة الوصول إلى معظم ادوات الشامان، فإنه يسرد كل كائن متاح في ترانسفورميس. وهنا لائحة فيها جميع ادوات الشامان التي يمكن أن تكون ولادتها من خلال الامر tfm.exec.addShamanObject.

لاحظ أن بعض منهم لا يمكن استخدامهم فى الانماط، لذلك يتم الخروج بها.

0 - Arrow
1 - Small Box
2 - Large Box
3 - Small Plank
4 - Large Plank
5 - Heavy Ball
6 - Ball
7 - Trampoline
8 - Small Rough Plank
9 - Large Rough Plank
10 - Anvil
11 - Red Anchor
12 - Red Anchor Rotating Clockwise
13 - Red Anchor Rotating Counter-Clockwise
14 - Green Anchor
15 - Green Anchor Rotating Clockwise
16 - Green Anchor Rotating Counter-Clockwise
17 - Cannon (Up)
18 - Cannon (Down)
19 - Cannon (Right)
20 - Cannon (Left)
21 - Sticky Ball
22 - Yellow Anchor
23 - Bomb
24 - Spirit
25 - Fake Cheese
26 - Blue Portal
27 - Orange Portal
28 - Balloon
29 - Static Red Balloon
30 - Static Green Balloon
31 - Static Yellow Balloon
32 - Rune
33 - Chicken
34 - Snowball
35 - Valentine's Arrow
39 - Apple
40 - Sheep
41 - Demolition Worker Skill
42 - Spring
43 - Speed Boost
44 - Totem
45 - Ice Plank
46 - Choco Plank
48 - Transformed Mouse Small Box
49 - Transformed Mouse Large Box
50 - Transformed Mouse Anvil
51 - Transformed Mouse Small Plank
52 - Transformed Mouse Large Plank
53 - Transformed Mouse
54 - Frozen Mouse
57 - Cloud
58 - Architect Skill
59 - Bubble
60 - Tiny Plank
61 - Companion Crate
62 - Stable Rune
65 - Pufferfish
66 - Balloon Anchor
67 - Very Long Plank
68 - Triangle Box
69 - S-Shaped Plank
70 - Cobweb Skill
71 - Roll Skill
72 - Recycling Skill
73 - Small Mouse Skill
74 - Leaf Skill
75 - Nature's Return Skill
76 - Booster Skill
77 - Handymouse Skill
78 - Restorative Skill
79 - Stop Skill
80 - Mouse in Bubble
81 - Gravitational Anomaly Skill
82 - Antigravity Skill
83 - Meep Skill
84 - Grapnel Skill
85 - Controlled Disintegration Skill
86 - Campfire Skill
87 - Shameow Skill (Broken)
88 - Conjuration Anchor
89 - Pumpkin
90 - Tombstone
91 - Snowman
92 - Renewal Skill
93 - Small Cloud
94 - Shameow Skill
100, 103-199, 20000-29999 - Invisible Small Box
101 - Small Heart Box
102 - Small Mechanical Box
103 - Small Christmas Box
104 - Small Cake Box
200, 204-299, 30000-32767 - Invisible Large Box
201 - Large Heart Box
202 - Large Mechanical Box
203 - Large Bubble Box
204 - large Pumpkin Box
205 - Large Christmas Box
206 - Large Shaman Box
207 - Large Cake Box
300, 303-399 - Invisible Small Plank
301 - Small Heart Plank
302 - Small Mechanical Plank
400, 404-499 - Invisible Large Plank
401 - Large Heart Plank
402 - Large Mechanical Plank
403 - Large Alligator Plank
600, 602-699 - Invisible Ball
601 - Pokéball
602 - Skull Ball
700, 702-799 - Invisible Trampoline
701 - Leafy Trampoline
1000, 1001, 1004-1099 - Invisible Anvil
1002 - Mechanical Anvil
1003 - Rock Anvil
1700, 1702-1799 - Invisible Cannon (Up)
1701 - Bubble Cannon (Up)
1800-1899 - Invisible Cannon (Down)
1900-1999 - Invisible Cannon (Right)
2000-2099 - Invisible Cannon (Left)
2801 - Cat Balloon
2802 - Mechanical Balloon
2803 - Striped Balloon
2804 - Spiky Balloon
2805 - Frog Balloon
2806 - Heart Balloon
2807 - Bubble Balloon
2800, 2808-3199 - Invisible Balloon
3200-3299 - Invisible Rune
3500-3599 - Invisible Valentine's Arrow
3900-3999 - Invisible Apple
4000-4099 - Invisible Sheep
4500-4599 - Invisible Ice Plank
4600-4699 - Invisible Choco Plank
5700-5799 - Invisible Cloud
5900-5999 - Invisible Bubble
6000-6099 - Invisible Tiny Plank
6100-6199 - Invisible Companion Crate
6200-6299 - Invisible Stable Rune
6500-6599 - Invisible Pufferfish
65536 - Arrow (repeats back from 0)


اكواد الازرار

هذه هي قائمة من الأحرف التي تدعم لوا، والرموز الرئيسية المقابلة لها..

8 - Backspace
9 - Tab
13 - Enter
16 - Shift
17 - Control
18 - Alt
19 - Pause
20 - Caps Lock
27 - Escape
32 - Spacebar
33 - Page Up
34 - Page Down
35 - End
36 - Home
37 - Left Arrow
38 - Up Arrow
39 - Right Arrow
40 - Down Arrow
45 - Insert
46 - Delete
48 - 0
49 - 1
50 - 2
51 - 3
52 - 4
53 - 5
54 - 6
55 - 7
56 - 8
57 - 9
65 - A
66 - B
67 - C
68 - D
69 - E
70 - F
71 - G
72 - H
73 - I
74 - K
75 - J
76 - L
77 - M
78 - N
79 - O
80 - P
81 - Q
82 - R
83 - S
84 - T
85 - U
86 - V
87 - W
88 - X
89 - Y
90 - Z
91 - Windows (Left)
92 - Windows (Right)
93 - Application Key
97 - 1 (Numbpad)
98 - 2 (Numbpad)
99 - 3 (Numbpad)
100 - 4 (Numbpad)
101 - 5 (Numbpad)
102 - 6 (Numbpad)
103 - 7 (Numbpad)
104 - 8 (Numbpad)
105 - 9 (Numbpad)
106 - * Asterix (Numbpad)
107 - + Plus (Numbpad)
109 - - Minus (Numbpad)
110 - \ Forward Slash (Numbpad)
112 - F1
113 - F2
114 - F3
115 - F4
116 - F5
117 - F6
118 - F7
119 - F8
120 - F9
121 - F10
122 - F11
123 - F12
144 - Numlock
145 - Scroll Lock
186 - ; Semicolon
187 - = Equals
188 - , Comma
189 - - Hyphen
190 - . Period
191 - / Forward Slash
192 - ` Apostrophe
219 - [ Left Square Bracket
220 - \ Backslash
221 - ] Right Square Bracket


معرّفات الارضيات

في ما يلي قائمة بالمعرفات الخاصة بالارضيات والتى يتم استخدامها فى XML للخريطة.

0 - Wood
1 - Ice
2 - Trampoline
3 - Lava
4 - Chocolate
5 - Earth
6 - Grass
7 - Sand
8 - Cloud
9 - Water
10 - Stone
11 - Snow
12 - Rectangle
13 - Circle


معرّفات الجسيمات

يحتوي هذا القسم على قائمة من الجسيمات والمعرفات المرتبطة بها، لاستخدامها في tfm.exec.displayParticle.

0 - White Glitter
1 - Purple Glitter
2 - Orange Glitter
3 - Spawn Dust
4 - Soft White Glitter
5 - Hearts
6 - Bubbles
7 - Bubbles
8 - Bubbles
9 - Teal Glitter
10 - Spirit
11 - Yellow Glitter
12 - Super Spirit
13 - Red Glitter
14 - Water Bubbles
15 - Plus 1
16 - Plus 10
17 - Plus 12
18 - Plus 14
19 - Plus 16
20 - Meep Sign
21 - Red Confetti
22 - Green Confetti
23 - Blue Confetti
24 - Yellow Confetti
25 - Rain
26 - Wind
27 - Wind
28 - Lightning
29 - Yellow Stars
30 - Small Red Hearts
31 - Small Pink Hearts
32 - Flowers
33 - Bell
34 - Water Drops
35 -
36 -
37 -


الالقاب

للحصول على قائمة كاملة ومحدثة من الالقاب، يمكنك زيارة صفحة ويكى ترانسفورمايس.


_G
    ipairs
    ui
      updateTextArea
      removeTextArea
      addPopup
      addTextArea

    math
      deg
      fmod
      random
      asin
      max
      modf
      log10
      floor
      cosh
      ldexp
      log
      pow
      randomseed
      frexp
      abs
      tanh
      acos
      atan2
      tan
      min
      ceil
      sinh
      sqrt
      huge
      rad
      sin
      exp
      cos
      atan
      pi

    pcall
    assert
    tonumber
    rawequal
    table
      maxn
      foreachi
      concat
      remove
      insert
      foreach
      sort
      getn

    tfm
      exec
        addShamanObject
        snow
        disableAutoNewGame
        setShaman
        addImage
        removeJoint
        respawnPlayer
        newGame
        disableAllShamanSkills
        setGameTime
        movePlayer
        removeImage
        chatMessage
        setVampirePlayer
        explosion
        moveObject
        disableAutoScore
        giveCheese
        addPhysicObject
        giveMeep
        displayParticle
        removePhysicObject
        disableAutoTimeLeft
        setPlayerScore
        killPlayer
        addJoint
        setRoomMaxPlayers
        setNameColor
        disableAfkDeath
        removeObject
        addConjuration
        setUIMapName
        setUIShamanName
        playerVictory
        bindKeyboard
        disableAutoShaman

      enum
        emote
          dance : 0
          laugh : 1
          cry : 2
          kiss : 3
          angry : 4
          clap : 5
          sleep : 6
          facepaw : 7
          sit : 8
          confetti : 9

        shamanObject
          arrow : 0
          littleBox : 1
          box : 2
          littleBoard : 3
          board : 4
          ball : 6
          trampoline : 7
          anvil : 10
          cannon : 19
          bomb : 23
          balloon : 28
          rune : 32
          snowBall : 34
          iceCube : 54


      get
        misc
          bouboumVersion : 1.16
          transformiceVersion : 2.69
          apiVersion : 0.19

        room
          community : EN
          currentMap : 0
          maxPlayers : 50
          objectList
            [id]
              id : 0
              x : 0
              y : 0
              angle : 0
              ghost : false
              type : 10


          name : -
          playerList
            [playerName]
              isJumping : true
              title : 0
              y : 0
              x : 0
              isDead : false
              look : 1;0,0,0,0,0,0,0,0,0
              isShaman : false
              vx : 0
              score : 0
              inHardMode : 0
              vy : 0
              movingRight : true
              hasCheese : true
              registrationDate : 0
              playerName : Tigrounette
              movingLeft : false
              isFacingRight : true
              isVampire : false
              tribeName : Les Populaires


          xmlMapInfo
            permCode
            mapCode : 630022
            author : Tigrounette
            xml : <C><P /><Z><S /><D /><O /></Z></C>




    pairs
    os
      difftime
      time
      date

    xpcall
    type
    error
    string
      len
      find
      gmatch
      byte
      dump
      reverse
      upper
      format
      rep
      lower
      sub
      gsub
      match
      char

    debug
      disableEventLog
      disableTimerLog

    tostring
    print
    next
    system
      disableChatCommandDisplay
      newTimer
      savePlayerData
      bindMouse
      giveEventGift
      exit
      removeTimer
      loadPlayerData
      loadFile
      saveFile




Dernière modification le 1504877160000
Jack_sparrow
« Censeur »
1500486720000
    • Jack_sparrow#8381
    • Profil
    • Derniers messages
    • Tribu
#2
  3
tfm.exec.giveCheese(playerName) <------ إعطاء جبن للاعب

التأثير: تعطى جبن للاعب المختار, اذا لم يكن لديه جبن.

المناقشات:
  • playerName (حرفى) - اسم اللاعب الذى سيأخد الجبن.


مثال:
tfm.exec.giveCheese("Sydoline")


tfm.exec.giveMeep(playerName) <------ اعطاء قدرة اطلاق الميب للاعب

التأثير: اعطاء اللاعب قدرة اطلاق "الميب", التى توجد فى نمط السورفايفر. اللاعبون المختارون يمكنهم الضغط على زر المسافة كل ثوانى قليلة لاطلاق الميب او "انفجار صغير" يضرب جميع الفئران بعيداً.

المناقشات:
  • playerName (حرفى) - اسم اللاعب الذى ستعطيه القدرة على اطلاق الميب.


مثال:
tfm.exec.giveMeep("Tigrounette")


tfm.exec.killPlayer(playerName) <------ قتل لاعب

التأثير: قتل اللاعب المختار, يمكنك حذفه عبر تكرار هذا الامر.

المناقشات:
  • playerName (حرفى) - اسم اللاعب الذى تريد قتله.


مثال:
tfm.exec.killPlayer("Tigrounette")


tfm.exec.snow(time, power) <------ هطول ثلج على الشاشة

التأثير: تقوم بإسقاط ثلج على الشاشة, كما فى موسم عيد الميلاد. عندما تهطل الثلوج, الفئران يمكنها اصلاق كرات الثلج عبر الضغط على زر اسفل, ستحدث انفجار بسيط عندما تلمس شئياً.

المناقشات:
  • time (عدد صحيح) - المدة التى سيبقى فيها الثلج على الشاشة بالثوانى. المعتاد هو 60.
  • power (حرفى) - قوة هطول الثلج وقوة الثلج. المعتاد هو 10.


مثال:
tfm.exec.snow(60,10)


tfm.exec.setVampirePlayer(playerName) <------ تحويل لاعب لخفاش

التأثير: تحويل لاعب إلى خفاش, كما فى ماب الخفاش فى نمط السورفايفر. الخفافيش سيكون لون اسمها باللون الاحمر, واذا لمس الخفاش فأر سيتحول هذا الفأر إلى خفاش ايضاً.

المناقشات:
  • playerName (حرفى) - اسم اللاعب الذى تريد تحويله إلى خفاش.


مثال:
tfm.exec.setVampirePlayer("Tigrounette")


tfm.exec.setUIShamanName(text) <------ تحويل اسم الشامان الذى فى واجهة المستخدم إلى النص الذى تريده

التأثير: وضع نص فى مكان اسم الشامان. النص "شامان:" تتم الاحتفاظ هناك.

http://i.imgur.com/aNNVY3e.png

المناقشات:
  • text (حرفى) - النص الذى سيظهر فى مكان اسم الشامان فى واجهة المستخدم.


مثال:
tfm.exec.setUIShamanName("Loukno is a kangaroo")


tfm.exec.setUIMapName(text) <------ تحويل اسم الخريطة التى فى واجهة المستخدم إلى النص الذى تريده

التأثير: تضع نص فى اعلى واجة المستخدم التى تكون فى مكان رمز الخريطة. يتم الاحتفاظ برمز الخريطة لنفسك.

http://i.imgur.com/gx8oPT6.png

المناقشات:
  • text (حرفى) - النص الذى سيظهر فى اعلى يسار واجهة المستخدمI.


المثال:
tfm.exec.setUIMapName("Tigrounette is smelly")


tfm.exec.setGameTime(seconds, add) <------ تغيير وقت الخريطة

التأثير: تحديد الوقت المتبقي على الجولة الحالية.

المناقشات:
  • seconds (عدد صحيح) - وقت الجولة بالثوانى .
  • add (منطقى) - اذا كانت true, سيتم اضافة الثوانى إلى الجولة الحالية. اذا كانت false, سيتم تحديد توقيت الجولة الحالية لكمية الثواني في الجولة الأولى.


مثال:
tfm.exec.setGameTime(600,true)


tfm.exec.setShaman(playerName) <------ تحويل لاعب لشامان

التأثير: تحويل لاعب لشامان. لاحظ أنه بسبب وجود خطأ, اللاعبون الذين سيستخدون هذا الامر ليحولوا إلى شامان لن يتم استخدام مهاراتهم, فقط المهارات الاولية.

المناقشات:
  • playerName (حرفى) - اسم اللاعب الذى تريد تحويله إلى شامان.


مثال:
tfm.exec.setShaman("Tigrounette")


tfm.exec.setPlayerScore(playerName, score, add) <------ تغيير نقاط لاعب

التأثير: تغيير نقاط اللاعب التى حصل عليها. النقاط توجد فى ال tfm.get.room.playerList table ويمكننا أن نرى جدول النقاط بجوار الشات.

المناقشات:
  • playerName (حرفى) - اسم اللاعب الذى تريد أن تغير نقاطه.
  • score (عدد صحيح) - عدد النقاط التى تريد أن تعطيها له.
  • add (منطقى) - اذا كانت true, ستجمع نقاط اللاعبالاساسية مع نقاط اللاعب المزودة. اذا كانت false,ستكون نقاطه المزودة فقط.


مثال:
tfm.exec.setPlayerScore("Tigrounette",25)


tfm.exec.setNameColor(playerName, color) <------ تغيير لون اسم لاعب

التأثير: يحدد لون اسم الذي يظهر, الكتابة فوق أي لون من السابق قد تكون لديهم (على سبيل المثال, الاصدقاء لونهم اخضر).

http://i.imgur.com/TDuLhH1.png

المناقشات:
  • playerName (حرفى) - اسم اللاعب الذى تريد تغيير لونه.
  • color (حرفى) - منطقة لون النص, ستكون رمز الهكس. اذا كانت 0, اسمائهم سوف ترجع كما كانت.


مثال:
tfm.exec.setNameColor("Tigrounette",0xFFFFFF)


tfm.exec.respawnPlayer(playerName) <------ ارجاع لاعب إلى اللعب

التأثير: تقوم بإرجاعك إلى اللعب اذا كنت قد مت.

المناقشات:
  • playerName (حرفى) - اسم اللاعب الذى تريد استرجاعه.


مثال:
tfm.exec.respawnPlayer("Tigrounette")


tfm.exec.playerVictory(playerName) <------ جعل لاعب يفوز

التأثير: يجعل اللاعب يحاكى الذهاب إلى الجحر, اذا كانوا يمتلكون الجبن سوف يذهبون واذا لم يفعلوا سيكملون كما لم يحدث شئ.

المناقشات:
  • playerName (حرفي) - اسم اللاعب الذي تريده أ يفوز.


مثال:
tfm.exec.playerVictory("Tigrounette")

ui.addPopup(id, type, text, targetPlayer, xPosition, yPosition, width, fixedPosition) <------ اضافة قائمة منبثقة

التأثير: صنع قائمة منبثقة فى الشاشة مع النص المُختار. الارتفاع يكون اوتوماتيكى ليظهره للاعب المُختار.

http://i.imgur.com/Ja8EXGv.png

المناقشات:
  • id (عدد صحيح) - تحديد نوع القائمة المنبثقة. قائمة واحدة ذات نفس النوع يمكنها أن تظهر فى نفس الوقت للاعب, لو واحدة أخرى انشأت بنفس هوية القائمة الاولى سوف تحذف.
  • type (عدد صحيح) - 0 هى قائمة منبثقة بسيطة بدون اى زر للاغلاق. 1 قائمة منبثقة بزارين بإسترجاعين مختلفين; "نعم" و "لا". 2 قائمة منبثقة مع صندوق نصى تسمح للاعب أن يكتب اى شئ يحبوه ويعرضها.
  • text (حرفى) - النص الذى يجب أن يظهر فى نافذة القائمة المنبثقة.
  • targetPlayer (حرفى) - اسم اللاعب الذى ستظهر له القائمة. اذا كانت nil, ستظهر القائمة لجميع اللاعبين.
  • xPosition (عدد صحيح) - الـ X ستكون فى اليسار.
  • yPosition (عدد صحيح) - الـ Y ستكون فى الاول الاعلى.
  • width (حرفى) - مدى عرض القائمة.
  • fixedPosition (منطقية) - اذا كانت صحيحة, القائمة سوف تبقى واجهة المستخدم على الخرائط التمرير. اذا كانت خطأ, ستبقى القائمة فى المكان نفسه فى الخارطة.


مثال:
ui.addPopup(1,0,"Example text to display.",nil,180,300,200,true)


ui.addTextArea(id, text, targetPlayer, xPosition, yPosition, width, height, backgroundColor, borderColor, backgroundAlpha, fixedPosition) <------ اضافة مساحة كتابة

التأثير: تنشأ مساحة على الشاشة باللون الذى تختاره, الحجم, والنص الذى تريده أن يظهر ويمكنك الضغط عليها.

http://i.imgur.com/w0XHjeO.png

المناقشات:
  • id (عدد صحيح) - هوية مساحة النص, تفيد عندما تمسحها او تقوم بتحديثها.
  • text (حرقى) - النص الذى يجب أن يظه في مساحة النص.
  • targetPlayer (حرفى) - اللاعب الذى ستظهرله مساحة النص. إذا كانت nil, ستظهر لجميع اللاعبين فى الغرفة.
  • xPosition (عدد صحيح) - الـ X يظهر فى اليسار.
  • yPosition (حرفى) - الـ Y يظهر فى الاعلى.
  • width (عدد صحيح) - عرض مساحة النص.
  • height (عدد صحيح) - طول مساحة النص.
  • backgroundColor (عدد صحيح) - رمز اللون, سيكون رقم الهكس. اذا كانت nil, لون الخلفية سيكون 0x324650.
  • borderColor (عدد صحيح) - لون الحدود التى حول مساحة النص, ستكون رمز الهكس. اذا كانت nil, يكون رمز الحدود 0x000000.
  • backgroundAlpha (العلو) - ستكون مرحلة مساحة النص هى. 1 غير شفافة, 0 شفافة للغاية. اذا كانت nil, الالفا يجب أن تكون 1.
  • fixedPosition (عدد صحيح) - اذا احتملت true, فإن منطقة النص سوف تبقى فى واجهة المستخدم على الخرائط التمرير. اذا احتملت false,سوف يبقى النص فى نفس مكانه فى الخريطة.


مِثال:
ui.addTextArea(1,"Example text to display.",nil,350,180,100,40,0x324650,0x212F36,0.8,true)

ui.updateTextArea(id, text, targetPlayer) <------ تحديث مساحة الكتابة

التأثير: استبدال النص بنص آخر مع شئ آخر.

المناقشات:
  • id (عدد صحيح) - هوية مساحة النص التى ستتغير.
  • text (حرفى) - النص ليتم عرضه فى المساحة المحدثه.
  • targetPlayer (حرفى) - اسم اللاعب سيتم تحديث عنده المساحة. اذا كانت nil, سوف تظهر عند جميع اللاعبين فى نص جديد.


مثال:
ui.updateTextArea(1,"This is some different text.",nil)

ui.removeTextArea(id, targetPlayer) <------ حذف مساحة الكتابة

التأثير: نقوم لإزالة مساحة النص كاملة, وتوقف اظهارها ولا يسمح الضغط عليها
المناقشات:
  • id (عدد صحيح) - هوية مساحة النص التي نريد إزالتها
  • targetPlayer (حرفي) - اسم اللاعب الذي يملك هوية مساحة النص. اذا كانت nil, كل اللاعبين سوف تمحي عندهم.


مثال:
ui.removeTextArea(1,nil)

print(text)

المهمة: مايتم كتابته في هذه الداله ستقوم بأضهارها لمشغل السكربت فقط. لو كانت نافذة $lua مفتوحة سيتم اضهار الكلام هناك

المناقشات:
  • text (string) - الكلام الذي يتم اضهاره.


مثال:

print("تجربة.")



system.exit()

التأثير: يقوم بتعطيل السكربت المشغل.

المناقشات:
  • لايوجد.


مثال:

system.exit()



system.newTimer(callback, time, loop, arg1, arg2, arg3, arg4)

التأثير: يقوم بأنشاء مؤقت سيقوم بتشغيل شيء لمدة محدده قبل ان يقوم بتشغيل دالة او تشغيل نفسه.

هذه الدالة متوفرة فقط لأعضاء فريق لوا , لأن تأثيره قوي جدا على موارد الخادم ويتم استخدامه في الاشراف.



system.removeTimer(timerID)

التأثير: يقوم بحذف مؤقت.

هذه الدالة متوفرة فقط لفريق لوا.

المناقشات:
  • timerID (integer) - رقم المؤقت الذي سيتم حذفه.


مثال:

counter=0
id=system.newTimer(
function()
print("ستتم طباعة هذه الرسالة كل ثانيه 10 مرات.")
counter=counter+1
if counter==10 then
system.removeTimer(id)
end
end
,1000,true)



system.loadFile(fileNumber)

التأثير: تقوم بتشغيل ملف تم حفظه , الاستخدام محدود " مرة واحده كل عشر دقائق".

هذه الدالة حاليا متوفرة فقط لفريق لوا.

system.saveFile(data, fileNumber)

التأثير: تقوم بحفظ ملف مع بيانات اللاعب الذي قام بتشغيل السكربت. الأستخدام محدود مرة واحده كل 10 دقائق.

هذه الدالة متوفرة حاليا فقط لفريق لوا. السبب : تقوم بأستخدام مساحة كبيره من الخادم بمدة قصيرة.

المناقشات:
  • data (string) - ال "String" المحفوظ . 64 الف حرف كـ اقصى حد.
  • fileNumber (integer) - رقم الملف الذي سيتم حفظه. يمكن ان يكون بين 1 و 100.


Example:
system.saveFile("مثال بسيط لحفظ "String".",1)


system.loadPlayerData(playerName)

التأثير: تقوم بتشغيل "String" عن لاعب تم حفظ معلوماته سابقا. ستعمل اذا كان اللاعب في الغرفة فقط.

هذه ادالة حالياً متوفرة فقط لفريق لوا.

المناقشات:
  • playerName (string) - اسم اللاعب الذي سيتم ادخال معلوماته.


مثال:
system.loadPlayerData("Tigrounette")


system.savePlayerData(playerName, data)

التأثير: تقوم بحفظ معلومات اختياريه عن لاعب. ستعمل اذا كان اللاعب في الغرفة.

هذه ادالة حالياً متوفرة فقط لفريق لوا. This is due to the fact that saving a lot of strings for different people can take up a lot of storage space on the server very quickly.

المناقشات:
  • playerName (string) - اسم اللاعب الذي سيتم استبدال الـ "String" الخاصه فيه1.
  • data (string) - المعلومات التي سيتم حفظها.


مثال:
system.savePlayerData("Tigrounette","للحفظ "String".")


system.disableChatCommandDisplay(command, hidden)

التأثير: تقوم بأخفاء الأمر الذي يبدأ ب ! حرف من العرض على المحادثه العامة. يمكن تعطيل حوالي 100 امر فقط.

المناقشات:
  • command (string) - الأمر الذي سيتم اخفائه , اي حرف بعد المسافه سيتم اضهاره , مثال "help" تم تعطيله, "help us please" سيتم اضهاره.
  • hidden (boolean) - لو كان "True", سيتم اخفاء الأمر في الشات العام. لو كان "False", سيتم اضهاره في الشات العام.


مثال:
system.disableChatCommandDisplay("help",true)


system.bindMouse(playerName, bind)

التأثير: تحديد مكان ضغطة اللاعب يمكن مناداة "eventMouse()". لو قمت بأختصار مكان ضغطة اللاعب, سيحدث ماتم كتابته عن الضغط على الشاشه.

المناقشات:
  • playerName (string) - اسم اللاعب الذي سيتم تحديد مكان ضغطته.
  • bind (boolean) - لو كان "True", سيتم تحديد مكان ضغطة اللاعب. لو كان "False", لن يتم تحديده, او سيتم فك الأختصار لو قمت بأختصار سابقاً.


مثال:
system.bindMouse("Tigrounette",true)


system.giveEventGift(playerName, gift)

التأثير: لو كانت الداله تعطي شيئا في موسم وتم قبوله من قبل المسؤولين, يقوم بأعطاء غرض للاعب في حال اكمال شيء. تم استعمال هذا سابقاً في حدث "معمل الدمى", Grim's "Mansion and Children's Day", حيث سيعطيك لقب نادر عن طريق اكمال مهمة محددة.

هذه ادالة حالياً متوفرة فقط لفريق لوا.

المناقشات:
  • playerName (string) - اسم اللاعب الذي سيتم اهدائه.
  • gift (string) - رقم الهديه التي ستعطى للاعب.


مثال:
system.giveEventGift("Tigrounette","titre_enfant_2014")


debug.disableEventLog(disabled)

التأثير: تقوم بتعطيل سجل الحدث الذي سيتم اضهاره.

المناقشات:
  • disabled (boolean) - لو كان "True", لن يتم اضهار سجل الحدث. لو كان "False", سيتم اضهار السجل في نافذة محادثه لوا.


مثال:
debug.disableEventLog(true)

Dernière modification le 1500487200000
Jack_sparrow
« Censeur »
1500486720000
    • Jack_sparrow#8381
    • Profil
    • Derniers messages
    • Tribu
#3
  4
الأحداث هي الوظائف التي يتم تشغيلها عندما يحدث شيء معين . هذا عادة عندما يقوم لاعب بتنفيذ عمل معين، ويسمى حدث معين من قبل رمز نفسه، أو واحدة من أشياء أخرى كثيرة.

http://i.imgur.com/yQght.png


eventChatCommand(playerName, message)

الاثر: هذا الحدث يُفعّل عندما يكتب لاعب رسالة في دردشة الغرفة التي تبدأ بـ ! مع حرف.

المناقشة:
  • playerName (حرفى) -اسم اللاعب الذى كتب الامر.
  • message (حرفى) - الامر الذى كُتِبَ. تأكد من انه لا يتضمن "!".


مثال:
function eventChatCommand(playerName,message)
print(playerName.." typed the command: "..message)
end



eventEmotePlayed(playerName, emoteID)

الاثر: يُفعّل هذا الحدث عندما يستخدم اللاعب تعبير .

المناقشة:
  • playerName (حرفى) - اسم اللاعب الذى قام بالتعبير.
  • emoteID (رقمى) - الـ المعرف الذى استخدمه اللاعب الخاص بالتعبير الذى قام به اللاعب. راجع قسم التعبيرات فى تبويب التعبيرات.


مثال:
function eventEmotePlayed(playerName, emoteID)
if emoteID==0 then
print(playerName.." is dancing!")
end
end



eventKeyboard(playerName, keyCode, down, xPlayerPosition, yPlayerPosition)

الاثر: هذا الحدث يُفعّل عندما لاعب يضغط على مفتاح على لوحة المفاتيح التي كانت ملزمة مع tfm.exec.bindKeyboard().

المناقشة:
  • playerName (حرفى) - اسم اللاعب الذى ضغط على الزر.
  • keyCode (رقمى) - المعرف الخاص بالزر الذى تم الضغط عليه.
  • down (منطقى) - اذا كان صحيحاً, سيتم الضغط على الزر لاسفل. اذا كان خطأ, سيتم السماح بالضغط.
  • xPlayerPosition (رقمى) - احداثى س الخاص باللاعب عندما ضغط على الزر.
  • yPlayerPosition (رقمى) - احداثى ص الخاص باللاعب عندما ضغط على الزر.


مثال:
function eventKeyboard(playerName, keyCode, down, xPlayerPosition,yPlayerPosition)
if key==32 then
print(playerName.." pressed the space key!")
end
end
tfm.exec.bindKeyboard("Tigrounette", 32, true, true)



eventMouse(playerName, xMousePosition, yMousePosition)

الاثر: يفعّل هذا الحدث عندما يتم الضغط على الشاشة.

المناقشة:
  • playerName (حرفي) - اسم اللاغب الذى ضغط على الشاشة.
  • xMousePosition (رقمى) - احداثى س الذى ضغط عنده اللاعب.
  • yMousePosition (رقمى) - احداثى ص الذى ضغط عنده اللاعب.


مثال:
function eventMouse(playerName,xMousePosition,yMousePosition)
print(playerName.." clicked the screen.")
end
system.bindMouse("Tigrounette", true)



eventLoop(currentTime, timeRemaining)

الاثر: هذا الحدث يظهر كل نصف ثاينة.

المناقشة:
  • currentTime (رقمى) - عدد الميلي ثانية منذ بداية الجولة الحالية.
  • timeRemaining (رقمى) - عدد الملي ثانية المتبقية حتى حتي انتهاء الجولة الحالية.


مثال:
function eventLoop(timeRemaining,timeRemaining)
print("This will spam you every half a second.")
end



eventNewGame()

الاثر: يفعّل هذا الحدث فى بداية كل خريطة جديدة / جولة جديدة.

المناقشة:
  • None.


مثال:
function eventNewGame()
print("A new round has just started.")
end



eventNewPlayer(playerName)

الاثر: يفعّل هذا الحدث عند انضمام لاعب جديد للغرفة.

المناقشة:
  • playerName (حرفي) - اسم اللاعب الذى انضم للغرفة.


مثال:
function eventNewPlayer(playerName)
print(playerName.." joined the room!")
end



eventPlayerDied(playerName)

الاثر: يفعّل ايضاً هذا الحدث عند موت لاعب. ايضاّ يتم تشغيله عند خروج لاعب من الغرفة.

المناقشة:
  • playerName (حرفي) - اسم اللاعب الذى مات.


مثال:
function eventPlayerDied(playerName)
print(playerName.." had an unfortunate death.")
end



eventPlayerGetCheese(playerName)

الاثر: يفعّل هذا الحدث عند حصول لاعب على الجبن.

المناقشة:
  • playerName (حرفي) -اسم اللاعب الذى حصل على الجبن.


مثال:
function eventPlayerGetCheese(playerName)
print(playerName.." gathered cheese!")
end



eventPlayerLeft(playerName)

الاثر: يفعّل هذا الحدث عند خروج لاعب من الغرفة.

المناقشة:
  • playerName (حرفي) - اسم اللاعب الذى خرج من الغرفة.


مثال:
function eventPlayerLeft(playerName)
print(playerName.." left the room :(")
end



eventPlayerVampire(playerName)

الاثر: يتم تفعيل هذا الحدث عند تحول العب إلى خفاش.

المناقشة:
  • arg1 (حرفي) - اللاعب الذى تحول إلى خفاش.


مثال:
function eventPlayerVampire(playerName)
print(playerName.." is now a vampire!")
end



eventPlayerWon(playerName, timeElapsed, timeElapsedSinceRespawn)

الاثر: يتم تفعيل هذا الحدث عندما يفوز لاعب.

المناقشة:
  • playerName (حرفي) - اسم اللاعب الذى فاز.
  • timeElapsed ( رقمى) - مقدار الملي ثانية التي مرت منذ بداية الجولة الحالية حتى فوز اللاعب .
  • timeElapsedSinceRespawn (رقمى) - مقدار الملي ثانية التي مرت منذ اخر انعاش.


مثال:
function eventPlayerWon(playerName,timeElapsed)
print(playerName.." got to the hole in "..(timeElapsed/1000).." seconds.")
end



eventPlayerRespawn(playerName)

الاثر: يتم تفعيل هذا الحدث عند انعاش لاعب, سواءً من خلال مهارة الاسعاف, او tfm.exec.respawnPlayer().

المناقشة:
  • playerName (حرفي) - اسم اللاعب الذى تم انعاشه.


مثال:
function eventPlayerRespawn(playerName)
print(playerName.." is now alive again!")
end



eventPopupAnswer(popupID, playerName, answer)

الاثر: يتم تفعيل هذا الحدث عندما يفوز اللاعب بالاجابة فى popup.

المناقشة:
  • popupID (حرفي) - الاى دى الخاص ب النافذة المنثقبة الذى تمت الاجابة فيها .
  • playerName (رقمى) - اسم اللاعب الذى قام بالاجابة.
  • answer (رقمى) - الحصول على الاجابةn.


مثال:
function eventPopupAnswer(popupID, playerName, answer)
print(playerName.." answered a popup with the ID "..popupID.." with the response: "..answer)
end



eventSummoningStart(playerName, objectType, xPosition, yPosition, angle)

الاثر: يتم تنفيذ هذا الحدث عند استدعاء الشامان للادوات.

المناقشة:
  • playerName (حرفي) - اسم الشامان الذى قام بوضع الاداة.
  • objectType (رقمى) - المعرف الخاص بالاداة الذى قام بوضعها.
  • xPosition (رقمى) - احداثى س الذى قام الشامان بوضع الاداة فيه.
  • yPosition (رقمى) - احداثى ص الذى قام الشامان بوضع الاداة فيه.
  • angle (رقمى) - الزاوية التى قام الشامان فيها بوضع الاداة.


مثال:
function eventSummoningStart(playerName, objectType, xPosition, yPosition, angle)
if objectType==10 then
print(playerName.." is spawning an anvil at X:"..xPosition.." Y:"..yPosition)
end
end



eventSummoningCancel(playerName)

الاثر: يتم تفعيل هذا الحدث عندما يتوقف الشامان عن وضع الاداة.

المناقشة:
  • playerName (حرفي) - اسم الشامان الذى توقف عن وضع الاداة.


مثال:
function eventSummoningCancel(playerName)
print(playerName.." stopped summoning an object.")
end



eventSummoningEnd(playerName, objectType, xPosition, yPosition, angle, xSpeed, ySpeed, other)

الاثر: يتم تنفيذ هذا الحدث عندما يتم الشاامان من استدعاء الاداة ووضعها بشكل كامل.

المناقشة:
  • playerName (حرفي) - اسم الشامان الذى وضع الاداة.
  • objectType (رقمى) - المعرف الخاص بالاداة.
  • xPosition (رقمى) - احداثى س الذى وضعت فيه الاداة.
  • yPosition (رقمى) - احداثى ص الذى وضعت فيه الاداة.
  • angle (رقمى) - الزاوية التى وضعت فيها الاداة.
  • xSpeed (رقمى) - سرعة س فى اطلاق الاداة وهذا مفيد فقط لكرات الشامان.
  • ySpeed (رقمى) - سرعة ص فى اطلاق الاداة وهذا مفيد فقط لكرات الشامان.
  • other (table) - جدول يحتوي على معلومات أخرى متعلق ب الاداة التى وضعت.
    • id (رقمى) - المعرف الخاص بالاداة ويستخدم فى tfm.exec.addImage() and tfm.exec.removeObject().
    • type (رقمى) - المعرف الخاص بالداة ويمكنك ان تجده فى قسم المعرفات.
    • x (رقمى) - احداثى س الخاص بالاداة.
    • y (رقمى) - احداثى س الخاص بالاداة.
    • angle (رقمى) - زاوية الاطلاق.
    • ghost (منطقى) - اذا كان صحيحاً, ستكون الاداة مخفية. اذا كان خطأ, ستظهر الاداة كما هي.


مثال:
function eventSummoningEnd(playerName, objectType, xPosition, yPosition, angle, xSpeed, ySpeed, other)
if objectType==10 then
print(playerName.." has spawned an anvil! Let's remove it.")
tfm.exec.removeObject(other.id)
end
end



eventTextAreaCallback(textAreaID, playerName, callback)

الاثر: يتم يفعيل هذا الحدث عندما يحدث شئ ما.

المناقشة:
  • textAreaID (رقمى) - المعرف الخاص باللافتة التي تم الضغط عليها, سواء كانت ui.removeTextArea() او ui.updateTextArea().
  • playerName (حرفي) - اسم اللاعب الذى ضغط على اللافتة.
  • callback (حرفي) - اسم الحدث الذ تم الضغط عليه. الـ "callback" جزءاً مما يلى مثال لتمكين الضغط عليها <a href="event:callback">النص</a>


مثال:
ui.addTextArea(1,"<a href='event:مثال'>مثال Text</a>",nil,375,175,50,50)
function eventTextAreaCallback(textAreaID, playerName, callback)
print(playerName.." clicked on Text Area "..textAreaID.." on the event '"..callback.."'.")
end


Dernière modification le 1500487020000
Jack_sparrow
« Censeur »
1500486720000
    • Jack_sparrow#8381
    • Profil
    • Derniers messages
    • Tribu
#4
  3

يمكنكم العثور على الأسئلة الشائعة فى هذا الموضوع


Dernière modification le 1500499260000
Jack_sparrow
« Censeur »
1500486780000
    • Jack_sparrow#8381
    • Profil
    • Derniers messages
    • Tribu
#5
  2
الرّد قابل للتعديل
Superpizza
« Citoyen »
1500486780000
    • Superpizza#6059
    • Profil
    • Derniers messages
#6
  0
ألأول "

شكراً على ألموضوع
Fireali40
« Censeur »
1500486900000
    • Fireali40#0000
    • Profil
    • Derniers messages
    • Tribu
#7
  0
Oeitew a dit :
ألأول "

شكراً على ألموضوع

تعرفين ان ردكي يجب ان يمسح اذا لم يكمل التعليقات الاضافية لاضافة اقسام
Superpizza
« Citoyen »
1500487020000
    • Superpizza#6059
    • Profil
    • Derniers messages
#8
  0
Fireali40 a dit :
Oeitew a dit :
ألأول "

شكراً على ألموضوع

تعرفين ان ردكي يجب ان يمسح اذا لم يكمل التعليقات الاضافية لاضافة اقسام

وأنت " لأكن هؤ تؤقف من فترة "
Fireali40
« Censeur »
1500487080000
    • Fireali40#0000
    • Profil
    • Derniers messages
    • Tribu
#9
  0
Oeitew a dit :
Fireali40 a dit :
Oeitew a dit :
ألأول "

شكراً على ألموضوع

تعرفين ان ردكي يجب ان يمسح اذا لم يكمل التعليقات الاضافية لاضافة اقسام

وأنت " لأكن هؤ تؤقف من فترة "

كم مدتها
ثانيتان
انا اراقب المضوع وهو يضع تعليق كل 3 ثواني

اين ذهب الموضوع القديم

Dernière modification le 1500487260000
Massi
« Consul »
1500498840000
    • Massi#0095
    • Profil
    • Derniers messages
    • Tribu
#10
  1
Zagear a dit :
يمكنكم العثور على الأسئلة الشائعة فى هذا الموضوع

كان بإمكانك اضافة هذه الجملة في اخر الموضوع بدلا من عمل 3 تعليقات ...
شكرا على الموضوع
لكن اين الموضوع القديم ؟
Jack_sparrow
« Censeur »
1500499200000
    • Jack_sparrow#8381
    • Profil
    • Derniers messages
    • Tribu
#11
  0
Unlocker001 a dit :
Zagear a dit :
يمكنكم العثور على الأسئلة الشائعة فى هذا الموضوع

كان بإمكانك اضافة هذه الجملة في اخر الموضوع بدلا من عمل 3 تعليقات ...
شكرا على الموضوع
لكن اين الموضوع القديم ؟

لم يكُن بإستطاعتي إضافة أى شئ فى الموضوع القديم لان الاحداث "events" طويلة وهناك حد معين يمكن أن اضيفه فى التعليق الواحد ^^
Tokimei_san
« Sénateur »
1501550880000
    • Tokimei_san#3485
    • Profil
    • Derniers messages
    • Tribu
#12
  0
شكراً على الموضوع...
Yandere_zineb
« Archonte »
1501552980000
    • Yandere_zineb#9920
    • Profil
    • Derniers messages
#13
  0
شكرا على الموضوع
ونتقبل كل جهودك المبذولة في كتابته ^_^
Wassimevicw
« Censeur »
1502729640000
    • Wassimevicw#0000
    • Profil
    • Derniers messages
    • Tribu
#14
  0
شكرا على الموضوع
Nanami
« Consul »
1503161820000
    • Nanami#9140
    • Profil
    • Derniers messages
#15
  0
رائع، شكرًا على الموضوع
Massi
« Consul »
1505318280000
    • Massi#0095
    • Profil
    • Derniers messages
    • Tribu
#16
  0
Zagear a dit :
Unlocker001 a dit :
Zagear a dit :
يمكنكم العثور على الأسئلة الشائعة فى هذا الموضوع

كان بإمكانك اضافة هذه الجملة في اخر الموضوع بدلا من عمل 3 تعليقات ...
شكرا على الموضوع
لكن اين الموضوع القديم ؟

لم يكُن بإستطاعتي إضافة أى شئ فى الموضوع القديم لان الاحداث "events" طويلة وهناك حد معين يمكن أن اضيفه فى التعليق الواحد ^^

حسنًا ^^
Crazypanda
« Citoyen »
1526051460000
    • Crazypanda#3261
    • Profil
    • Derniers messages
#17
  1
players={}
for n in pairs(tfm.get.room.playerList) do
table.instert(players,n)
end

tfm.exec.setShaman(players[math.random(#players)])
Crazypanda
1526077200000
    • Crazypanda#3261
    • Profil
    • Derniers messages
#18
[Modéré par Beauty_queen, raison : رد متتالي.]
Ahmed_star
« Citoyen »
1526878260000
    • Ahmed_star#0000
    • Profil
    • Derniers messages
#19
  0
كفو ولله ي بطل استمر ي معلم :)
Hooly94
« Consul »
1526907960000
    • Hooly94#6910
    • Profil
    • Derniers messages
#20
  0
موضوع حلو ممكن اتعلم منو شوي خخخخخخخخخ
  • Forums
  • /
  • Transformice
  • /
  • Modules
  • /
  • [تعليم] لوا والالعاب الصغيرة
1 / 3 › »
© Atelier801 2018

Equipe Conditions Générales d'Utilisation Politique de Confidentialité Contact

Version 1.27