Rechercher - Liste des utilisateurs
Version complète : Les cases à côté
Accueil » FunDelphi » Les cases à côté
1
Xaumina
J'essaye, pour Namini, de faire un plugin des bombes. Le problème, c'est que je ne sais pas comment atteindre les cases autour. J'ai essayé de faire "OrigPos + 1;", et ainsi de suite, mais ça ne marche pas.
Par la même occasion, j'aimerais bien savoir la façon de temporiser.

Voici mon code :
plugin TBombPlugin
  hint 'Plugin des bombes';

  on AfterConstruction do
  begin
    inherited;

    MaxLength := 1;
  end;

  on PressKey do
  var
    ObjectBomb : TObjectBomb;
    Square : TSquare;
    BombEffect : TEffect;
    Map: TMap;
    Pos, OrigPos: T3DPoint;
    Dir: TDirection;
    Len, I: Integer;
    QPos: TQualifiedPos;
  begin

    Map := Player.Map;
    OrigPos := Player.Position;
    Pos := PointBehind(OrigPos, Dir);
    Len := 0;
    QPos.Map := Map;

    if Key <> Ord('B') then
      Exit;

    if Player can ExplosObstacle then
      Square.Effect := BombEffect;
      BombObject.Count := BombObject.Count - 1;
      Temporize;
      Temporize;
      OrigPos + 1;
      OrigPos.Obstacle := nil;
    end else
      Player.PlaySound ('Sol.wav');
  end;
end;
sjrd
Oui évidemment les positions sont des triplets de coordonnées. Leur ajouter un simple nombre n'a pas de sens.
Si tu veux atteindre la case à côté dans une direction donnée, utilise
OrigPos := PointBefhind(OrigPos, diNorth); // ou Player.Direction
Xaumina
Merci !
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB