add floor generation