Entity* contain_chest::spawnme(float x, float y, int spawnflags, int act) { contain_chest* ent = new contain_chest(); ent->x = x; ent->y = y; ent->w = 0.3f; ent->h = 0.3f; ent->spawnflags = spawnflags; ent->uuid = genuuid(); ent->classname = "contain_chest"; ent->materialHandle = trap->RegisterMaterial("test-chest"); ent->ptAnims = trap->GetAnimation(ent->uuid.c_str(), "test-chest"); ent->bShouldWeCollide = true; // We can't collide with a chest once it's open, though. ent->bShouldWeRender = true; ent->bShouldWeThink = true; ent->iAct = act; return ent; }
int main(int argc, char **argv) { // memtrack(); gc_attach(main_gc); /* Catch all exit signals for gc */ gc_catch(); log_shell_enable(); log_file_disable(); log_level_set(LOG_NOTICE); struct options_t *options = NULL; struct ifaddrs *ifaddr, *ifa; int family = 0; char *p = NULL; char *args = NULL; progname = MALLOC(13); if(!progname) { logprintf(LOG_ERR, "out of memory"); exit(EXIT_FAILURE); } strcpy(progname, "pilight-uuid"); options_add(&options, 'H', "help", OPTION_NO_VALUE, 0, JSON_NULL, NULL, NULL); options_add(&options, 'V', "version", OPTION_NO_VALUE, 0, JSON_NULL, NULL, NULL); while (1) { int c; c = options_parse(&options, argc, argv, 1, &args); if(c == -1) break; if(c == -2) c = 'H'; switch (c) { case 'H': printf("Usage: %s [options]\n", progname); printf("\t -H --help\t\tdisplay usage summary\n"); printf("\t -V --version\t\tdisplay version\n"); return (EXIT_SUCCESS); break; case 'V': printf("%s %s\n", progname, PILIGHT_VERSION); return (EXIT_SUCCESS); break; default: printf("Usage: %s [options]\n", progname); return (EXIT_FAILURE); break; } } options_delete(options); #ifdef __FreeBSD__ if(rep_getifaddrs(&ifaddr) == -1) { logprintf(LOG_ERR, "could not get network adapter information"); goto clear; } #else if(getifaddrs(&ifaddr) == -1) { perror("getifaddrs"); goto clear; } #endif for(ifa = ifaddr; ifa != NULL; ifa = ifa->ifa_next) { if(ifa->ifa_addr == NULL) { continue; } family = ifa->ifa_addr->sa_family; if((strstr(ifa->ifa_name, "lo") == NULL && strstr(ifa->ifa_name, "vbox") == NULL && strstr(ifa->ifa_name, "dummy") == NULL) && (family == AF_INET || family == AF_INET6)) { if((p = genuuid(ifa->ifa_name)) == NULL) { logprintf(LOG_ERR, "could not generate the device uuid"); freeifaddrs(ifaddr); goto clear; } else { printf("%s\n", p); FREE(p); break; } } } freeifaddrs(ifaddr); clear: main_gc(); return (EXIT_FAILURE); }
int main(int argc, char **argv) { // memtrack(); atomicinit(); gc_attach(main_gc); /* Catch all exit signals for gc */ gc_catch(); log_shell_enable(); log_file_disable(); log_level_set(LOG_NOTICE); struct options_t *options = NULL; char *p = NULL; char *args = NULL; if((progname = MALLOC(13)) == NULL) { fprintf(stderr, "out of memory\n"); exit(EXIT_FAILURE); } strcpy(progname, "pilight-uuid"); options_add(&options, 'H', "help", OPTION_NO_VALUE, 0, JSON_NULL, NULL, NULL); options_add(&options, 'V', "version", OPTION_NO_VALUE, 0, JSON_NULL, NULL, NULL); while (1) { int c; c = options_parse(&options, argc, argv, 1, &args); if(c == -1) break; if(c == -2) c = 'H'; switch (c) { case 'H': printf("Usage: %s [options]\n", progname); printf("\t -H --help\t\tdisplay usage summary\n"); printf("\t -V --version\t\tdisplay version\n"); return (EXIT_SUCCESS); break; case 'V': printf("%s v%s\n", progname, PILIGHT_VERSION); return (EXIT_SUCCESS); break; default: printf("Usage: %s [options]\n", progname); return (EXIT_FAILURE); break; } } options_delete(options); int nrdevs = 0, x = 0; char **devs = NULL; if((nrdevs = inetdevs(&devs)) > 0) { for(x=0;x<nrdevs;x++) { if((p = genuuid(devs[x])) == NULL) { logprintf(LOG_ERR, "could not generate the device uuid"); } else { strcpy(pilight_uuid, p); FREE(p); break; } } } array_free(&devs, nrdevs); printf("%s\n", pilight_uuid); main_gc(); return (EXIT_FAILURE); }