public override void FireEvent() { if (!this.strikeLoc.IsValid) { this.strikeLoc = CellFinderLoose.RandomCellWith((IntVec3 sq) => sq.Standable(map) && !sq.Roofed(map), map); } this.boltMesh = Skydriller_PLasmaBeam_MeshMaker.NewBoltMesh(); }
public static Mesh NewBoltMesh() { if (laserBeamMesh == null) { Skydriller_PLasmaBeam_MeshMaker.lightningTop = new Vector2(0f, LightningHeight); Skydriller_PLasmaBeam_MeshMaker.MakeVerticesBase(); Skydriller_PLasmaBeam_MeshMaker.PeturbVerticesRandomly(); Skydriller_PLasmaBeam_MeshMaker.DoubleVertices(); laserBeamMesh = Skydriller_PLasmaBeam_MeshMaker.MeshFromVerts(); } return(laserBeamMesh); }