Skip to main content

scratch_test_model/blocks/
events.rs

1use scratch_test_model_proc::Block;
2
3use crate::attrs::{
4    BroadcastId, DirectDropdownOf, Expression, KeyboardKey, dropdowns::GreaterThan,
5};
6
7#[derive(Debug, PartialEq, Block, Clone)]
8#[allow(clippy::enum_variant_names)]
9#[block(default_location = inputs)]
10pub enum EventBlockKind {
11    EventWhenflagclicked,
12    EventWhenthisspriteclicked,
13    EventWhenbackdropswitchesto {
14        #[block(location = fields)]
15        backdrop: DirectDropdownOf<svalue::ARc<str>>,
16    },
17    EventWhenkeypressed {
18        #[block(location = fields)]
19        key_option: DirectDropdownOf<KeyboardKey>,
20    },
21    EventWhenbroadcastreceived {
22        #[block(location = fields)]
23        broadcast_option: BroadcastId,
24    },
25    EventWhengreaterthan {
26        #[block(location = inputs)]
27        value: Expression,
28        #[block(location = fields, json_name = "WHENGREATERTHANMENU")]
29        category: DirectDropdownOf<GreaterThan>,
30    },
31}