@@ -199,8 +199,8 @@ pub enum IntershardResourceType {
199
199
200
200
named_enum_serialize_deserialize ! ( IntershardResourceType ) ;
201
201
202
- /// Translates `RESOURCES_ALL` constant, representing all possible in-game
203
- /// (non-intershard) resources.
202
+ /// Translates the values of the `RESOURCES_ALL` constant, representing all
203
+ /// possible in-game (non-intershard) resources.
204
204
#[ wasm_bindgen]
205
205
#[ derive( Copy , Clone , Debug , PartialEq , Eq , Hash , Sequence ) ]
206
206
pub enum ResourceType {
@@ -485,6 +485,148 @@ impl ResourceType {
485
485
}
486
486
}
487
487
488
+ /// A collection of all resource types. This is a direct translation of the
489
+ /// `RESOURCES_ALL` constant in game using the rust `ResourceType` enum.
490
+ ///
491
+ /// Feature-specific resources are included in this list when the appropriate
492
+ /// feature is enabled.
493
+ pub const RESOURCES_ALL : & ' static [ ResourceType ] = & [
494
+ ResourceType :: Power ,
495
+ ResourceType :: Energy ,
496
+ ResourceType :: Hydrogen ,
497
+ ResourceType :: Oxygen ,
498
+ ResourceType :: Utrium ,
499
+ ResourceType :: Lemergium ,
500
+ ResourceType :: Keanium ,
501
+ ResourceType :: Zynthium ,
502
+ ResourceType :: Catalyst ,
503
+ ResourceType :: Ghodium ,
504
+ ResourceType :: Silicon ,
505
+ ResourceType :: Metal ,
506
+ ResourceType :: Biomass ,
507
+ ResourceType :: Mist ,
508
+ ResourceType :: Hydroxide ,
509
+ ResourceType :: ZynthiumKeanite ,
510
+ ResourceType :: UtriumLemergite ,
511
+ ResourceType :: UtriumHydride ,
512
+ ResourceType :: UtriumOxide ,
513
+ ResourceType :: KeaniumHydride ,
514
+ ResourceType :: KeaniumOxide ,
515
+ ResourceType :: LemergiumHydride ,
516
+ ResourceType :: LemergiumOxide ,
517
+ ResourceType :: ZynthiumHydride ,
518
+ ResourceType :: ZynthiumOxide ,
519
+ ResourceType :: GhodiumHydride ,
520
+ ResourceType :: GhodiumOxide ,
521
+ ResourceType :: UtriumAcid ,
522
+ ResourceType :: UtriumAlkalide ,
523
+ ResourceType :: KeaniumAcid ,
524
+ ResourceType :: KeaniumAlkalide ,
525
+ ResourceType :: LemergiumAcid ,
526
+ ResourceType :: LemergiumAlkalide ,
527
+ ResourceType :: ZynthiumAcid ,
528
+ ResourceType :: ZynthiumAlkalide ,
529
+ ResourceType :: GhodiumAcid ,
530
+ ResourceType :: GhodiumAlkalide ,
531
+ ResourceType :: CatalyzedUtriumAcid ,
532
+ ResourceType :: CatalyzedUtriumAlkalide ,
533
+ ResourceType :: CatalyzedKeaniumAcid ,
534
+ ResourceType :: CatalyzedKeaniumAlkalide ,
535
+ ResourceType :: CatalyzedLemergiumAcid ,
536
+ ResourceType :: CatalyzedLemergiumAlkalide ,
537
+ ResourceType :: CatalyzedZynthiumAcid ,
538
+ ResourceType :: CatalyzedZynthiumAlkalide ,
539
+ ResourceType :: CatalyzedGhodiumAcid ,
540
+ ResourceType :: CatalyzedGhodiumAlkalide ,
541
+ ResourceType :: Ops ,
542
+ ResourceType :: UtriumBar ,
543
+ ResourceType :: LemergiumBar ,
544
+ ResourceType :: ZynthiumBar ,
545
+ ResourceType :: KeaniumBar ,
546
+ ResourceType :: GhodiumMelt ,
547
+ ResourceType :: Oxidant ,
548
+ ResourceType :: Reductant ,
549
+ ResourceType :: Purifier ,
550
+ ResourceType :: Battery ,
551
+ ResourceType :: Composite ,
552
+ ResourceType :: Crystal ,
553
+ ResourceType :: Liquid ,
554
+ ResourceType :: Wire ,
555
+ ResourceType :: Switch ,
556
+ ResourceType :: Transistor ,
557
+ ResourceType :: Microchip ,
558
+ ResourceType :: Circuit ,
559
+ ResourceType :: Device ,
560
+ ResourceType :: Cell ,
561
+ ResourceType :: Phlegm ,
562
+ ResourceType :: Tissue ,
563
+ ResourceType :: Muscle ,
564
+ ResourceType :: Organoid ,
565
+ ResourceType :: Organism ,
566
+ ResourceType :: Alloy ,
567
+ ResourceType :: Tube ,
568
+ ResourceType :: Fixtures ,
569
+ ResourceType :: Frame ,
570
+ ResourceType :: Hydraulics ,
571
+ ResourceType :: Machine ,
572
+ ResourceType :: Condensate ,
573
+ ResourceType :: Concentrate ,
574
+ ResourceType :: Extract ,
575
+ ResourceType :: Spirit ,
576
+ ResourceType :: Emanation ,
577
+ ResourceType :: Essence ,
578
+ #[ cfg( feature = "seasonal-season-1" ) ]
579
+ ResourceType :: Score ,
580
+ #[ cfg( feature = "seasonal-season-2" ) ]
581
+ ResourceType :: SymbolAleph ,
582
+ #[ cfg( feature = "seasonal-season-2" ) ]
583
+ ResourceType :: SymbolBeth ,
584
+ #[ cfg( feature = "seasonal-season-2" ) ]
585
+ ResourceType :: SymbolGimmel ,
586
+ #[ cfg( feature = "seasonal-season-2" ) ]
587
+ ResourceType :: SymbolDaleth ,
588
+ #[ cfg( feature = "seasonal-season-2" ) ]
589
+ ResourceType :: SymbolHe ,
590
+ #[ cfg( feature = "seasonal-season-2" ) ]
591
+ ResourceType :: SymbolWaw ,
592
+ #[ cfg( feature = "seasonal-season-2" ) ]
593
+ ResourceType :: SymbolZayin ,
594
+ #[ cfg( feature = "seasonal-season-2" ) ]
595
+ ResourceType :: SymbolHeth ,
596
+ #[ cfg( feature = "seasonal-season-2" ) ]
597
+ ResourceType :: SymbolTeth ,
598
+ #[ cfg( feature = "seasonal-season-2" ) ]
599
+ ResourceType :: SymbolYodh ,
600
+ #[ cfg( feature = "seasonal-season-2" ) ]
601
+ ResourceType :: SymbolKaph ,
602
+ #[ cfg( feature = "seasonal-season-2" ) ]
603
+ ResourceType :: SymbolLamedh ,
604
+ #[ cfg( feature = "seasonal-season-2" ) ]
605
+ ResourceType :: SymbolMem ,
606
+ #[ cfg( feature = "seasonal-season-2" ) ]
607
+ ResourceType :: SymbolNun ,
608
+ #[ cfg( feature = "seasonal-season-2" ) ]
609
+ ResourceType :: SymbolSamekh ,
610
+ #[ cfg( feature = "seasonal-season-2" ) ]
611
+ ResourceType :: SymbolAyin ,
612
+ #[ cfg( feature = "seasonal-season-2" ) ]
613
+ ResourceType :: SymbolPe ,
614
+ #[ cfg( feature = "seasonal-season-2" ) ]
615
+ ResourceType :: SymbolTsade ,
616
+ #[ cfg( feature = "seasonal-season-2" ) ]
617
+ ResourceType :: SymbolQoph ,
618
+ #[ cfg( feature = "seasonal-season-2" ) ]
619
+ ResourceType :: SymbolRes ,
620
+ // sin/sim mismatch is intended here - see official mod:
621
+ // https://github.com/screeps/mod-season2/blob/3dfaa8f6214b2610dbe2a700c6287a10e7960ae8/src/resources.js#L23
622
+ #[ cfg( feature = "seasonal-season-2" ) ]
623
+ ResourceType :: SymbolSin ,
624
+ #[ cfg( feature = "seasonal-season-2" ) ]
625
+ ResourceType :: SymbolTaw ,
626
+ #[ cfg( feature = "seasonal-season-5" ) ]
627
+ ResourceType :: Thorium ,
628
+ ] ;
629
+
488
630
/// Returned values from [`ResourceType::boost`] representing the effect of
489
631
/// boosting a creep with the given resource.
490
632
#[ derive( Copy , Clone , Debug ) ]
0 commit comments