Zum Inhalt springen

!ship

Targets parsen

Core Arguments Set Argument

Zwei Set-Argument-Sub-Actions: target1 = $replace(%input0%, @, )$ und target2 = $replace(%input1%, @, )$.

If/Else — Mindestens 1 Target nötig

Core Logic If/Else

If %target1% Is Null or Empty → Send Message Hilfe + Break.

Input %target1%
Operation Is Null or Empty

Self-Ship Fallback

Core Logic If/Else

If %target2% leer → Set Argument target2 = %userName%. User shippt sich mit target1.

Input %target2%
Operation Is Null or Empty

Self-Self verhindern

Core Logic If/Else

If %target1% Equals (Ignore Case) %target2% → Send Message + Break.

Input %target1%
Operation Equals (Ignore Case)
Value %target2%

Get Random Number — Kompatibilität

Core Logic Get Random Number
Type Between
Min 0
Max 100

Range-Cascade Antworten

Core Logic If/Else (×5)

6 Buckets: <10 Garbage, <30 Naja, <60 Geht so, <85 Nicht schlecht, <100 Perfect Match, ==100 SOULMATES.

AzaBot: 💕 @%target1% × @%target2%%randomNumber%%. Nicht schlecht!
So sieht's im Chat aus
RangeMessage
< 10💔 @%target1% × @%target2% — %randomNumber%%. Garbage Match.
< 30💔 @%target1% × @%target2% — %randomNumber%%. Naja.
< 60💜 @%target1% × @%target2% — %randomNumber%%. Geht so.
< 85💕 @%target1% × @%target2% — %randomNumber%%. Nicht schlecht!
< 100💖 @%target1% × @%target2% — %randomNumber%%. Perfect Match!
100 (Default)🔥 @%target1% × @%target2% — 100%! SOULMATES.
  1. 1 Set Argument: target1 = $replace(%input0%, @, )$
  2. 2 Set Argument: target2 = $replace(%input1%, @, )$
  3. 3 If/Else: %target1% Is Null or Empty
    1. Then 3a Send Message: "@%user% nutze !ship @user1 @user2"
    2. Then 3b Break
  4. 4 If/Else: %target2% Is Null or Empty
    1. Then 5 Set Argument: target2 = %userName% (Self-Ship Fallback)
  5. 6 If/Else: %target1% Equals %target2%
    1. Then 6a Send Message: "kann nicht mit sich selbst shippen"
    2. Then 6b Break
  6. 7 Get Random Number (0, 100)
  7. 8 Range-Cascade (5× If/Else mit Break, dann Default-Message)
FeldWert
Name!ship
GroupAzaCraft Fun
Commands!ship
!love
SourcesTwitch Message
Global Cooldown0
User Cooldown30
ChatResultat
!ship @bob @alice„💜 @bob × @alice — 42%. Geht so.”
!ship @bob„💖 @ship-user × @bob — 87%. Perfect Match!”
!ship @bob @bob„kann nicht mit sich selbst…”
!shipHilfe-Message

Damit das gleiche Pärchen immer den gleichen Score bekommt:

6. Global (Get): shipScore_%target1%_%target2% (Persisted, Default leer) → score
7. If/Else: %score% Is Null or Empty
├── Get Random Number (0, 100)
├── Set Argument: score = %randomNumber%
└── Global (Set): shipScore_%target1%_%target2% = %score% Persisted
8. (Range-Cascade auf %score% statt %randomNumber%)

Wenn ein User VIP oder Sub ist, +20 %:

7. Get Random Number (0, 100)
8. Set Argument: finalScore = %randomNumber%
9. (Get User Info for both targets, prüfe isSubscribed)
10. If/Else: %target1IsSubscribed% Equals true
└─ Set Argument: finalScore = $add(%finalScore%, 20)$