Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <stdbool.h>
- #include <string.h>
- bool isinarray(char *ch, char **arr, int size) {
- for (int i=0; i<size; i++) {
- if (ch[1] == arr[i][1])
- return true;
- }
- return false;
- }
- // sys args => (distance, windForce, directions)
- int main (int argc, char *argv[]) {
- // variables
- int distance = 0, angle = 65;
- float windForce = 0.0;
- float strength[21] = {13, 21, 26, 31.5, 37, 41, 44, 48.5, 53, 56,
- 58, 61, 64, 67, 70, 73, 76, 79, 82, 85};
- char *directions = " ";
- char charDirection = ' ', windDirection = ' ';
- // logic
- if (argc == 4) {
- distance = atoi(argv[1]);
- windForce = atof(argv[2]);
- directions = argv[3];
- if ((distance >= 0) && (distance <= 20)) {
- if (strlen(directions) == 3) {
- charDirection = directions[0];
- windDirection = directions[2];
- if (charDirection != windDirection)
- angle -= windForce / 0.5;
- else if (charDirection == windDirection)
- angle += windForce / 0.5;
- printf("%.1fF | %dA\n", strength[distance], angle);
- } else
- printf("Sentido do personagem e/ou do vento nao detectado!\n");
- } else
- printf("Distancia fora do limite!\n");
- } else {
- if (isinarray("-h", argv, argc))
- printf("Para usar o script é necessário os seguintes argumentos:\n\t(1) distancia\n\t(2) forca do vento\n\t(3) direcao_personagem,direcao_vento\n");
- else
- printf("Esse script requer argumentos\n");
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement