Server LuaCsForBarotrauma
Ladder.cs
1 using System.Collections.Generic;
2 using System.Xml.Linq;
3 
5 {
6  partial class Ladder : ItemComponent
7  {
8  public static List<Ladder> List { get; } = new List<Ladder>();
9 
10  public Ladder(Item item, ContentXElement element)
11  : base(item, element)
12  {
13  InitProjSpecific(element);
14  List.Add(this);
15  }
16 
17  partial void InitProjSpecific(ContentXElement element);
18 
19  public override bool Select(Character character)
20  {
21  if (character == null || character.LockHands || character.Removed ) { return false; }
22  if (!character.CanClimb) { return false; }
23  character.AnimController.StartClimbing();
24  return true;
25  }
26 
27  protected override void RemoveComponentSpecific()
28  {
29  base.RemoveComponentSpecific();
30  RemoveProjSpecific();
31  List.Remove(this);
32  }
33 
34  partial void RemoveProjSpecific();
35  }
36 }
The base class for components holding the different functionalities of the item
static List< Ladder > List
Definition: Ladder.cs:8
override bool Select(Character character)
Definition: Ladder.cs:19
Ladder(Item item, ContentXElement element)
Definition: Ladder.cs:10
override void RemoveComponentSpecific()
Definition: Ladder.cs:27