Elin Decompiled Documentation EA 23.299 Nightly
Loading...
Searching...
No Matches
SourceMaterial.Row Class Reference
Inheritance diagram for SourceMaterial.Row:

Public Member Functions

override void OnImportData (SourceData data)
 
void Init ()
 
void SetTiles ()
 
bool HasEnc (int id)
 
void AddBlood (Point p, int a=1)
 
void PlayHitEffect (Point p, int emit=2)
 
Color GetColor ()
 
string TryGetSound (string suffx, RenderRow c=null)
 
string GetSoundDead (RenderRow c=null)
 
string GetSoundDrop (RenderRow c=null)
 
string GetSoundCraft (RenderRow c=null)
 
string GetSoundImpact (RenderRow c=null)
 
void CreateByProduct (Thing container, int num)
 

Public Attributes

int id
 
string alias
 
string name_JP
 
string name
 
string category
 
string[] tag
 
string thing
 
string[] goods
 
string[] minerals
 
int decal
 
int decay
 
int grass
 
int defFloor
 
int defBlock
 
int edge
 
int ramp
 
string idSound
 
string soundFoot
 
int hardness
 
string[] groups
 
int tier
 
int chance
 
int weight
 
int value
 
int quality
 
int atk
 
int dmg
 
int dv
 
int pv
 
int dice
 
string[] bits
 
int[] elements
 
string[] altName
 
string[] altName_JP
 
Color matColor
 
Color altColor
 
Dictionary< int, int > elementMap
 
string name_L
 
string detail_L
 
string[] altName_L
 

Static Public Attributes

static string[] IDPick = new string[5] { "rock", "ore", "gem", "crystal", "bone" }
 
static string[] IDAxe = new string[1] { "wood" }
 

Properties

override bool UseAlias [get]
 
override string GetAlias [get]
 
bool UsePick [get]
 
bool UseAxe [get]
 

Detailed Description

Definition at line 8 of file SourceMaterial.cs.

Member Function Documentation

◆ AddBlood()

void SourceMaterial.Row.AddBlood ( Point  p,
int  a = 1 
)
inline

Definition at line 157 of file SourceMaterial.cs.

158 {
159 if (decal == 0)
160 {
161 return;
162 }
163 if (p.cell.IsSnowTile && this != MATERIAL.sourceSnow)
164 {
165 MATERIAL.sourceSnow.AddBlood(p, a);
166 return;
167 }
168 for (int i = 0; i < a; i++)
169 {
170 EClass._map.AddDecal(p.x + ((EClass.rnd(2) != 0) ? (EClass.rnd(3) - 1) : 0), p.z + ((EClass.rnd(2) != 0) ? (EClass.rnd(3) - 1) : 0), decal);
171 }
172 }
bool IsSnowTile
Definition: Cell.cs:782
Definition: EClass.cs:6
static Map _map
Definition: EClass.cs:19
static int rnd(long a)
Definition: EClass.cs:59
static SourceMaterial.Row sourceSnow
Definition: MATERIAL.cs:41
void AddDecal(int x, int z, int id, int amount=1, bool refresh=true)
Definition: Map.cs:2030
int x
Definition: Point.cs:36
int z
Definition: Point.cs:39
Cell cell
Definition: Point.cs:51

References EClass._map, Map.AddDecal(), Point.cell, SourceMaterial.Row.decal, Cell.IsSnowTile, EClass.rnd(), MATERIAL.sourceSnow, Point.x, and Point.z.

Referenced by Map.DestroyObj(), Map.MineBlock(), TaskChopWood.OnCreateProgress(), TaskDig.OnCreateProgress(), TaskHarvest.OnCreateProgress(), and TaskPlow.OnCreateProgress().

◆ CreateByProduct()

void SourceMaterial.Row.CreateByProduct ( Thing  container,
int  num 
)
inline

Definition at line 223 of file SourceMaterial.cs.

224 {
226 thing.ModNum(num);
227 container.AddThing(thing);
228 C("dye");
229 switch (category)
230 {
231 case "bone":
232 C("glass");
233 C("stick");
234 break;
235 case "crystal":
236 C("glass");
237 C("gem");
238 break;
239 case "ore":
240 C("scrap");
241 C("cutstone");
242 C("ingot");
243 break;
244 case "rock":
245 C("rock");
246 C("pebble");
247 C("cutstone");
248 break;
249 case "soil":
250 C("glass");
251 C("clay");
252 C("brick");
253 break;
254 case "gem":
255 C("cutstone");
256 C("ingot");
257 C("gem");
258 break;
259 case "wood":
260 C("plank");
261 C("stick");
262 C("bark");
263 break;
264 case "fiber":
265 C("thread");
266 C("texture");
267 C("string");
268 break;
269 case "skin":
270 C("texture");
271 break;
272 }
273 string[] array = goods;
274 foreach (string text in array)
275 {
276 C(text);
277 }
278 void C(string _id)
279 {
280 Thing thing2 = ThingGen.Create(_id);
281 thing2.ChangeMaterial(id);
282 thing2.ModNum(num);
283 container.AddThing(thing2);
284 }
285 }
Card ChangeMaterial(int idNew, bool ignoreFixedMaterial=false)
Definition: Card.cs:3119
Thing AddThing(string id, int lv=-1)
Definition: Card.cs:3182
void ModNum(int a, bool notify=true)
Definition: Card.cs:3599
static Thing CreateRawMaterial(SourceMaterial.Row m)
Definition: ThingGen.cs:68
static Thing Create(string id, int idMat=-1, int lv=-1)
Definition: ThingGen.cs:53
Definition: Thing.cs:8

References Card.AddThing(), SourceMaterial.Row.category, Card.ChangeMaterial(), ThingGen.Create(), ThingGen.CreateRawMaterial(), SourceMaterial.Row.goods, Card.ModNum(), and SourceMaterial.Row.thing.

◆ GetColor()

Color SourceMaterial.Row.GetColor ( )
inline

Definition at line 180 of file SourceMaterial.cs.

181 {
182 return Core.Instance.Colors.matColors[alias].main;
183 }
UD_String_MatData matColors
Definition: Core.cs:14
static new Core Instance
Definition: Core.cs:15
ColorProfile Colors
Definition: Core.cs:53

References SourceMaterial.Row.alias, Core.Colors, Core.Instance, and ColorProfile.matColors.

Referenced by UIMapPreview._RefreshPoint(), Map.MineBlock(), Map.MineFloor(), and SourceMaterial.Row.PlayHitEffect().

◆ GetSoundCraft()

string SourceMaterial.Row.GetSoundCraft ( RenderRow  c = null)
inline

Definition at line 205 of file SourceMaterial.cs.

206 {
207 if (category == "wood")
208 {
209 return "build_progress";
210 }
211 return TryGetSound("craft", c);
212 }
string TryGetSound(string suffx, RenderRow c=null)

References SourceMaterial.Row.category, and SourceMaterial.Row.TryGetSound().

◆ GetSoundDead()

string SourceMaterial.Row.GetSoundDead ( RenderRow  c = null)
inline

Definition at line 195 of file SourceMaterial.cs.

196 {
197 return TryGetSound("dead", c);
198 }

References SourceMaterial.Row.TryGetSound().

Referenced by Map.DestroyObj(), Map.MineBlock(), and Map.MineFloor().

◆ GetSoundDrop()

string SourceMaterial.Row.GetSoundDrop ( RenderRow  c = null)
inline

Definition at line 200 of file SourceMaterial.cs.

201 {
202 return TryGetSound("drop", c);
203 }

References SourceMaterial.Row.TryGetSound().

◆ GetSoundImpact()

string SourceMaterial.Row.GetSoundImpact ( RenderRow  c = null)
inline

Definition at line 214 of file SourceMaterial.cs.

215 {
216 if (c != null && !c.idSound.IsEmpty())
217 {
218 return "Material/" + c.idSound;
219 }
220 return "Material/" + idSound;
221 }
string idSound
Definition: RenderRow.cs:48

References SourceMaterial.Row.idSound.

Referenced by Recipe.Build(), RecipeCard.Build(), TaskDig.OnCreateProgress(), TaskDrawWater.OnCreateProgress(), TaskHarvest.OnCreateProgress(), TaskPlow.OnCreateProgress(), and SourceMaterial.Row.TryGetSound().

◆ HasEnc()

bool SourceMaterial.Row.HasEnc ( int  id)
inline

Definition at line 145 of file SourceMaterial.cs.

146 {
147 foreach (int key in elementMap.Keys)
148 {
149 if (key == id)
150 {
151 return true;
152 }
153 }
154 return false;
155 }
Dictionary< int, int > elementMap

References SourceMaterial.Row.elementMap.

◆ Init()

void SourceMaterial.Row.Init ( )
inline

Definition at line 113 of file SourceMaterial.cs.

114 {
116 if (matColors == null)
117 {
118 matColors = new MatColors();
119 string[] array = tag;
120 foreach (string text in array)
121 {
122 if (text.StartsWith("addCol"))
123 {
124 if (text.Contains("_Main"))
125 {
126 matColors.main = text.ExtractInBetween('(', ')').ToColor();
127 }
128 if (text.Contains("_Alt"))
129 {
130 matColors.alt = text.ExtractInBetween('(', ')').ToColor();
131 }
132 }
133 }
134 Core.Instance.Colors.matColors[alias] = matColors;
135 }
136 matColor = matColors.main;
137 altColor = matColors.alt;
138 SetTiles();
139 }
Color main
Definition: MatColors.cs:7
Color alt
Definition: MatColors.cs:9
bool TryGetValue(TKey key, out TValue value)
Definition: UDictionary.cs:178

References SourceMaterial.Row.alias, MatColors.alt, SourceMaterial.Row.altColor, Core.Colors, Core.Instance, MatColors.main, SourceMaterial.Row.matColor, ColorProfile.matColors, SourceMaterial.Row.SetTiles(), SourceMaterial.Row.tag, and UDictionary< TKey, TValue >.TryGetValue().

Referenced by SourceMaterial.OnInit().

◆ OnImportData()

override void SourceMaterial.Row.OnImportData ( SourceData  data)
inline

Definition at line 107 of file SourceMaterial.cs.

108 {
109 base.OnImportData(data);
110 SetTiles();
111 }

References SourceMaterial.Row.SetTiles().

◆ PlayHitEffect()

void SourceMaterial.Row.PlayHitEffect ( Point  p,
int  emit = 2 
)
inline

Definition at line 174 of file SourceMaterial.cs.

175 {
176 Effect.Get("mine2").Play(p).SetParticleColor(GetColor())
177 .Emit(emit + EClass.rnd(4));
178 }
Definition: Effect.cs:7
static Effect Get(Effect original)
Definition: Effect.cs:85
void Play(float delay, Point from, float fixY=0f, Point to=null, Sprite sprite=null)
Definition: Effect.cs:100

References Effect.Get(), SourceMaterial.Row.GetColor(), Effect.Play(), and EClass.rnd().

Referenced by TaskChopWood.OnCreateProgress(), TaskDig.OnCreateProgress(), TaskDrawWater.OnCreateProgress(), TaskHarvest.OnCreateProgress(), and TaskPlow.OnCreateProgress().

◆ SetTiles()

void SourceMaterial.Row.SetTiles ( )
inline

Definition at line 141 of file SourceMaterial.cs.

142 {
143 }

Referenced by SourceMaterial.Row.Init(), and SourceMaterial.Row.OnImportData().

◆ TryGetSound()

string SourceMaterial.Row.TryGetSound ( string  suffx,
RenderRow  c = null 
)
inline

Definition at line 185 of file SourceMaterial.cs.

186 {
187 string soundImpact = GetSoundImpact(c);
188 if (EClass.Sound.Exist(soundImpact + "_" + suffx))
189 {
190 return soundImpact + "_" + suffx;
191 }
192 return soundImpact;
193 }
static SoundManager Sound
Definition: EClass.cs:47
string GetSoundImpact(RenderRow c=null)

References SourceMaterial.Row.GetSoundImpact(), and EClass.Sound.

Referenced by SourceMaterial.Row.GetSoundCraft(), SourceMaterial.Row.GetSoundDead(), and SourceMaterial.Row.GetSoundDrop().

Member Data Documentation

◆ alias

string SourceMaterial.Row.alias

◆ altColor

Color SourceMaterial.Row.altColor

Definition at line 82 of file SourceMaterial.cs.

Referenced by SourceMaterial.Row.Init(), and Card.RefreshColor().

◆ altName

string [] SourceMaterial.Row.altName

Definition at line 74 of file SourceMaterial.cs.

◆ altName_JP

string [] SourceMaterial.Row.altName_JP

Definition at line 76 of file SourceMaterial.cs.

◆ altName_L

string [] SourceMaterial.Row.altName_L

Definition at line 97 of file SourceMaterial.cs.

◆ atk

int SourceMaterial.Row.atk

Definition at line 60 of file SourceMaterial.cs.

◆ bits

string [] SourceMaterial.Row.bits

Definition at line 70 of file SourceMaterial.cs.

◆ category

string SourceMaterial.Row.category

◆ chance

int SourceMaterial.Row.chance

Definition at line 52 of file SourceMaterial.cs.

Referenced by SourceMaterial.OnInit().

◆ decal

int SourceMaterial.Row.decal

Definition at line 28 of file SourceMaterial.cs.

Referenced by SourceMaterial.Row.AddBlood().

◆ decay

int SourceMaterial.Row.decay

Definition at line 30 of file SourceMaterial.cs.

◆ defBlock

int SourceMaterial.Row.defBlock

Definition at line 36 of file SourceMaterial.cs.

Referenced by BaseTileMap.DrawTile().

◆ defFloor

int SourceMaterial.Row.defFloor

Definition at line 34 of file SourceMaterial.cs.

Referenced by MapGen.OnGenerateTerrain().

◆ detail_L

string SourceMaterial.Row.detail_L

Definition at line 94 of file SourceMaterial.cs.

◆ dice

int SourceMaterial.Row.dice

Definition at line 68 of file SourceMaterial.cs.

◆ dmg

int SourceMaterial.Row.dmg

Definition at line 62 of file SourceMaterial.cs.

◆ dv

int SourceMaterial.Row.dv

Definition at line 64 of file SourceMaterial.cs.

◆ edge

int SourceMaterial.Row.edge

Definition at line 38 of file SourceMaterial.cs.

◆ elementMap

Dictionary<int, int> SourceMaterial.Row.elementMap

Definition at line 84 of file SourceMaterial.cs.

Referenced by SourceMaterial.Row.HasEnc().

◆ elements

int [] SourceMaterial.Row.elements

Definition at line 72 of file SourceMaterial.cs.

Referenced by SourceMaterial.OnImportRow(), and SourceMaterial.OnInit().

◆ goods

string [] SourceMaterial.Row.goods

Definition at line 24 of file SourceMaterial.cs.

Referenced by SourceMaterial.Row.CreateByProduct().

◆ grass

int SourceMaterial.Row.grass

Definition at line 32 of file SourceMaterial.cs.

◆ groups

string [] SourceMaterial.Row.groups

Definition at line 48 of file SourceMaterial.cs.

Referenced by SourceMaterial.OnInit().

◆ hardness

int SourceMaterial.Row.hardness

Definition at line 46 of file SourceMaterial.cs.

Referenced by SourceMaterial.OnImportRow(), and BaseTaskHarvest.SetTarget().

◆ id

◆ IDAxe

string [] SourceMaterial.Row.IDAxe = new string[1] { "wood" }
static

Definition at line 88 of file SourceMaterial.cs.

◆ IDPick

string [] SourceMaterial.Row.IDPick = new string[5] { "rock", "ore", "gem", "crystal", "bone" }
static

Definition at line 86 of file SourceMaterial.cs.

◆ idSound

string SourceMaterial.Row.idSound

Definition at line 42 of file SourceMaterial.cs.

Referenced by SourceMaterial.Row.GetSoundImpact().

◆ matColor

◆ minerals

string [] SourceMaterial.Row.minerals

Definition at line 26 of file SourceMaterial.cs.

◆ name

string SourceMaterial.Row.name

Definition at line 16 of file SourceMaterial.cs.

◆ name_JP

string SourceMaterial.Row.name_JP

Definition at line 14 of file SourceMaterial.cs.

◆ name_L

string SourceMaterial.Row.name_L

Definition at line 91 of file SourceMaterial.cs.

◆ pv

int SourceMaterial.Row.pv

Definition at line 66 of file SourceMaterial.cs.

◆ quality

int SourceMaterial.Row.quality

Definition at line 58 of file SourceMaterial.cs.

◆ ramp

int SourceMaterial.Row.ramp

Definition at line 40 of file SourceMaterial.cs.

Referenced by Recipe.Build().

◆ soundFoot

string SourceMaterial.Row.soundFoot

Definition at line 44 of file SourceMaterial.cs.

Referenced by Chara._Move().

◆ tag

string [] SourceMaterial.Row.tag

Definition at line 20 of file SourceMaterial.cs.

Referenced by SourceMaterial.Row.Init(), and BaseTaskHarvest.SetTarget().

◆ thing

string SourceMaterial.Row.thing

Definition at line 22 of file SourceMaterial.cs.

Referenced by SourceMaterial.Row.CreateByProduct(), and ActionMode.UpdateInput().

◆ tier

int SourceMaterial.Row.tier

Definition at line 50 of file SourceMaterial.cs.

Referenced by SourceMaterial.OnInit().

◆ value

int SourceMaterial.Row.value

Definition at line 56 of file SourceMaterial.cs.

◆ weight

int SourceMaterial.Row.weight

Definition at line 54 of file SourceMaterial.cs.

Property Documentation

◆ GetAlias

override string SourceMaterial.Row.GetAlias
get

Definition at line 101 of file SourceMaterial.cs.

◆ UseAlias

override bool SourceMaterial.Row.UseAlias
get

Definition at line 99 of file SourceMaterial.cs.

◆ UseAxe

bool SourceMaterial.Row.UseAxe
get

Definition at line 105 of file SourceMaterial.cs.

◆ UsePick

bool SourceMaterial.Row.UsePick
get

Definition at line 103 of file SourceMaterial.cs.


The documentation for this class was generated from the following file: