scratch_test_model/blocks/
events.rs1use 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}