Exemple #1
0
 public PlayerImageBullet(UserSprite pa, CoroutineFunction<UserSprite, PlayerBullet> op, int i, int s)
 {
     Parent = pa;
     SpecialOperation = op(Parent, this);
     Image = i;
     IsImageLoaded = true;
     Strength = s;
     CollisionRadius = 8;
 }
Exemple #2
0
 public CharacterBullet(EnemyUser parent, CoroutineFunction<UserSprite, Bullet> op, char c)
 {
     Parent = parent;
     MyKind = ObjectKind.EnemyBullet;
     TargetKind = ObjectKind.Player;
     Operation = op(Parent, this);
     Character = c;
     Size = 20;
     HomeX = buffered.Width / 2.0;
     HomeY = buffered.Height / 2.0;
     CollisionRadius = 4;
     GrazeRadius = 8;
 }
Exemple #3
0
 public EnemyUser(SceneGame sc, CoroutineFunction<EnemyUser> op, Status s)
     : this()
 {
     Game = sc;
     SourceStatus = s;
     SourceUser = s.User;
     Operation = op(this);
     TotalHealth = Health = 1000 + (SourceStatus.User.StatusesCount / 10) + (DateTime.Now - SourceStatus.User.CreatedAt.LocalDateTime).Days * 3;
     Task.Run(() =>
     {
         Image = UserImageManager.GetUserImage(SourceStatus.User);
         IsImageLoaded = true;
     });
 }
Exemple #4
0
 public PlayerUser(SceneGame sc, UserInformation u, CoroutineFunction<PlayerUser> mop, CoroutineFunction<PlayerUser> sop, PlayerInputMethod im)
 {
     info = u;
     game = sc;
     ipmet = im;
     SourceUser = u.SourceUser;
     MovingOperation = mop(this);
     ShotOperation = sop(this);
     MyKind = ObjectKind.Player;
     DamageKind = ObjectKind.Enemy | ObjectKind.EnemyBullet;
     CollisionRadius = u.CollisionRadius;
     GrazeRadius = CollisionRadius * 1.5;
     ShotStrength = u.ShotStrength;
     ShotInterval = 2;
     Operatable = true;
     HasCollision = true;
     GrazePoint = u.GrazePoints;
     Task.Run(() =>
     {
         Image = UserImageManager.GetUserImage(SourceUser);
         IsImageLoaded = true;
     });
 }
Exemple #5
0
 public static Coroutine Start(CoroutineFunction func)
 {
     return(new Coroutine(CoroutineCaller.StartCoroutine(func())));
 }
Exemple #6
0
 public LinearLaser(EnemyUser par, CoroutineFunction<UserSprite, LinearLaser> op, double thickness, int img)
 {
     Parent = par;
     Image = img;
     CollisionRadius = thickness;
     Thickness = thickness;
     Operation = op(par, this);
 }
Exemple #7
0
 public CurveLaser(EnemyUser par, ICurve curve, CoroutineFunction<UserSprite, CurveLaser> op, double col, CurveLaserImage img)
 {
     Parent = par;
     LaserImage = img;
     CollisionRadius = col;
     Thickness = col;
     Operation = op(par, this);
     Curve = curve.Points.ToList();
 }
Exemple #8
0
 public CurveCharacterLaser(EnemyUser par, ICurve curve, CoroutineFunction<UserSprite, CurveLaser> op, Status st)
     : base(par, curve, op, 0, null)
 {
     CollisionRadius = 4;
     GrazeRadius = 8;
     SourceStatus = st;
     Letters = st.Text.Select(p =>
     {
         LetterInformation info;
         CommonObjects.TextureFontBullet.Letters.TryGetValue(p, out info);
         return info;
     }).ToArray();
 }
Exemple #9
0
 public void ApplySpecialOperation(CoroutineFunction<AdditionalCoroutineSprite> pat)
 {
     SpecialOperation = pat(this);
 }
Exemple #10
0
 public void AddSubOperation(CoroutineFunction<AdditionalCoroutineSprite> pat)
 {
     if (taken)
     {
         operations.Add(pat(this));
     }
     else
     {
         bufop.Add(pat(this));
     }
 }
Exemple #11
0
 public CoroutineSprite(CoroutineFunction<CoroutineSprite> op)
 {
     Operation = op(this);
 }
Exemple #12
0
 public PlayerLinearLaser(UserSprite par, CoroutineFunction<UserSprite, PlayerLinearLaser> op, double thickness, int img)
 {
     Parent = par;
     Image = img;
     CollisionRadius = thickness;
     Thickness = thickness;
     SpecialOperation = op(par, this);
 }