Zum Inhalt springen
  • Dunkel
  • Hell
  • System

!fight

Unterschied zu !duel: !duel ist ein 1v1 zwischen Sender und einem Target. !fight kann zwei beliebige User gegeneinander stellen. Sender muss nicht beteiligt sein.

Set Argument: User1 säubern

Core Arguments Set Argument
Variable Name user1Login
Value $replace(%input0%, @, )$

Set Argument: User2 säubern

Core Arguments Set Argument
Variable Name user2Login
Value $replace(%input1%, @, )$

If/Else: Kein User1

Core Logic If/Else
Input %user1Login%
Operation Is Null or Empty
Then

Send Message to Channel

Twitch Chat Send Message to Channel
Message @%user% nutze !fight @user1 [@user2]
Then

Break

Core Logic Break

Stoppt die laufende Action. Alle folgenden Sub-Actions in derselben Action werden übersprungen.

If/Else: Kein User2

Core Logic If/Else

Fallback: Sender ist user2.

Input %user2Login%
Operation Is Null or Empty
Then

Set Argument: Sender als User2

Core Arguments Set Argument
Variable Name user2Login
Value %userName%

Get User Info for Target: User1

Twitch User Get User Info for Target

Setzt %targetUser%.

User Login %user1Login%

Set Argument: User1 Display sichern

Core Arguments Set Argument
Variable Name user1Display
Value %targetUser%

Get User Info for Target: User2

Twitch User Get User Info for Target
User Login %user2Login%

Get Random Number

Core Logic Get Random Number
Min 0
Max 1

If/Else: Wer gewinnt?

Core Logic If/Else
Input %randomNumber%
Operation Equals
Value 0
Then

Send Message: User1 gewinnt

Twitch Chat Send Message to Channel
Message ⚔️ @%user1Display% vs @%targetUser%: @%user1Display% siegt!
Then

Break

Core Logic Break

Stoppt die laufende Action. Alle folgenden Sub-Actions in derselben Action werden übersprungen.

Send Message: User2 gewinnt

Twitch Chat Send Message to Channel
Message ⚔️ @%user1Display% vs @%targetUser%: @%targetUser% siegt!
AzaBot: ⚔️ @Alice vs @Bob: @Bob siegt!
So sieht's im Chat aus
  1. 1 Set Argument: user1Login = $replace(%input0%, @, )$
  2. 2 Set Argument: user2Login = $replace(%input1%, @, )$
  3. 3 If/Else: %user1Login% Is Null or Empty
    1. Then 3a Send Message: Hilfe-Text
    2. Then 3b Break
  4. 4 If/Else: %user2Login% Is Null or Empty
    1. Then 4a Set Argument: user2Login = %userName%
  5. 5 Get User Info for Target (user1Login)
  6. 6 Set Argument: user1Display = %targetUser%
  7. 7 Get User Info for Target (user2Login)
  8. 8 Get Random Number (0, 1)
  9. 9 If/Else: %randomNumber% Equals 0
    1. Then 9a Send Message: user1 siegt
    2. Then 9b Break
  10. 10 Send Message: user2 siegt Default
FeldWert
Name!fight
Commands!fight
!duel2
!kampf
User Cooldown30
Global Cooldown5
  • %targetUser% wird überschrieben: Zweites Get-User-Info überschreibt das %targetUser% vom ersten. Deshalb Sub-Action 6: wir sichern User1-Display in eigenes Argument.
  • Self-Fight: !fight @sender würde Sender vs Sender → kein Crash, aber langweilig. Optional If/Else %user1Login% Equals (Ignore Case) %user2Login% → Send Message "Schwer alleine zu kämpfen" + Break vor Sub-Action 8.
  • Damage-Variant: Mit zusätzlichem Get Random Number 1–100 HP-Bar in Message bauen: siehe !duel-Page für Pattern.
  • Win-Counter: Pro User Persisted Global „fightsWon“: Top-10 via !fightlb.
  • Tournament-Mode: !tournament Command der 8 Targets in Bracket-Form fightet (sehr advanced, mit Loop).