From 3292405fcb6c80ed80ee8ce07fce9fe2dc0c00b2 Mon Sep 17 00:00:00 2001 From: Greg Taylor Date: Wed, 25 Apr 2007 14:47:33 +0000 Subject: [PATCH] Adding initial data via Django's syncdb facility. We will no longer distribute a SQLite DB in the near future in favor of this cross-platform alternative. Also in this commit is a crash fix for @dig with SQLite. --- apps/config/sql/commandalias.sql | 9 +++++++++ apps/config/sql/configvalue.sql | 5 +++++ apps/helpsys/sql/helpentry.sql | 17 +++++++++++++++++ apps/objects/models.py | 1 + apps/objects/sql/object.sql | 2 ++ evennia.sql | Bin 65536 -> 65536 bytes functions_db.py | 5 ++++- 7 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 apps/config/sql/commandalias.sql create mode 100644 apps/config/sql/configvalue.sql create mode 100644 apps/helpsys/sql/helpentry.sql create mode 100644 apps/objects/sql/object.sql diff --git a/apps/config/sql/commandalias.sql b/apps/config/sql/commandalias.sql new file mode 100644 index 0000000000..778d307678 --- /dev/null +++ b/apps/config/sql/commandalias.sql @@ -0,0 +1,9 @@ +INSERT INTO "config_commandalias" VALUES(1,'l','look'); +INSERT INTO "config_commandalias" VALUES(2,'ex','examine'); +INSERT INTO "config_commandalias" VALUES(3,'@dest','@destroy'); +INSERT INTO "config_commandalias" VALUES(4,'@nuke','@destroy'); +INSERT INTO "config_commandalias" VALUES(5,'sa','say'); +INSERT INTO "config_commandalias" VALUES(6,'@tel','@teleport'); +INSERT INTO "config_commandalias" VALUES(7,'i','inventory'); +INSERT INTO "config_commandalias" VALUES(8,'inv','inventory'); +INSERT INTO "config_commandalias" VALUES(9,'@desc','@description'); \ No newline at end of file diff --git a/apps/config/sql/configvalue.sql b/apps/config/sql/configvalue.sql new file mode 100644 index 0000000000..449cf7808a --- /dev/null +++ b/apps/config/sql/configvalue.sql @@ -0,0 +1,5 @@ +INSERT INTO "config_configvalue" VALUES(0,'site_name','Evennia Test Site'); +INSERT INTO "config_configvalue" VALUES(1,'site_port','4000'); +INSERT INTO "config_configvalue" VALUES(2,'player_dbnum_start','2'); +INSERT INTO "config_configvalue" VALUES(3,'money_name_plural','Credits'); +INSERT INTO "config_configvalue" VALUES(4,'money_name_singular','Credit'); \ No newline at end of file diff --git a/apps/helpsys/sql/helpentry.sql b/apps/helpsys/sql/helpentry.sql new file mode 100644 index 0000000000..95cbdcb991 --- /dev/null +++ b/apps/helpsys/sql/helpentry.sql @@ -0,0 +1,17 @@ +INSERT INTO "helpsys_helpentry" VALUES(1,'Help Index','This game has yet to customize its help index, so for now you may browse the generic codebase help files. + +Topics +------ +NEWBIE %%t%%t Getting started (for new players). +COMMANDS %%t How to get help with commands. +CREDITS %%t Codebase credits.',0); +INSERT INTO "helpsys_helpentry" VALUES(2,'Credits','Evennia is a product of a small community of developers, all working towards the continual improvement of the codebase. The following people have made major contributions with the end result being what you are now playing. + +"Kelvin" (Greg Taylor) - Lead developer and original author.',0); +INSERT INTO "helpsys_helpentry" VALUES(3,'Commands','Commands in Evennia are generally organized into one of two categories: %%cgPublic%%cn or %%cyPrivileged%%cn commands. + +%%cgPublic%%cn commands are more or less available to everyone. None of these commands are prefixed with anything, they are typical, every-day commands like %%chlook%%cn, %%chsay%%cn, and %%chget%%cn. + +%%cyPrivileged%%cn command availability is largely dependent on the privileges and powers bestowed on you by the staff. Privileged commands are generally building/administration related and aren''t of general interest to players. These commands are all pre-fixed by a ''%%ch@%%cn'' character. + +To see a list of all commands, use %%ch@list commands%%cn. If you''d like to learn more about any individual command, you may do so by typing %%chhelp %%cn, where is the name of the command (without the <>''s).',0); \ No newline at end of file diff --git a/apps/objects/models.py b/apps/objects/models.py index 4ddb6a9d93..b0c68a6e97 100755 --- a/apps/objects/models.py +++ b/apps/objects/models.py @@ -441,6 +441,7 @@ class Object(models.Model): try: return self.location except: + functions_general.print_errmsg("Object '%s(#%d)' has invalid location: #%s" % (self.name,self.id,self.location_id)) return False def get_attribute_value(self, attrib, default=False): diff --git a/apps/objects/sql/object.sql b/apps/objects/sql/object.sql new file mode 100644 index 0000000000..7777743601 --- /dev/null +++ b/apps/objects/sql/object.sql @@ -0,0 +1,2 @@ +INSERT INTO "objects_object" VALUES(1,'Wizard','Wizard',1,0,2,1,'',2,'','CONNECTED','2007-04-25'); +INSERT INTO "objects_object" VALUES(2,'Limbo','Limbo',1,NULL,NULL,2,'Welcome to your new Evennia-based game. From here you are ready to begin development. If you should need help or would like to participate in community discussions, visit http://evennia.com.',NULL,'','','2007-04-25'); \ No newline at end of file diff --git a/evennia.sql b/evennia.sql index 600480cbbf18934bf8e895c0b40a34df61199847..05cc0ab8e67d0b51842ce0d5082a94216d7018bc 100755 GIT binary patch delta 3725 zcmcK7Yiv{39RTq2xW~S}iIdoQ*pBnKb{>x7_>nj*gm(sMp&PG`4H%SQ5|6kfaY)P~ zMU&$J<@o`0*RE*N1oR6?v>I5|$~3J_B?^qTgMI=eCaR$cM#W%SC=U(x|DOv*>t5Q2 z`TE@7|K8(!&b`NfU!OZRri_g#`zoE5lf-f+_xE`JYVM`2F zbs<=}%V1UJfR$#4RaImDAs2-e7*oEP@Xah|E}ZZ&!=dyrzRTD$u}vX_Q-j~#rf@Pc(jwMAq~t`YaGM;O=&PQ(rRaf;I~LxE-(fI&3S4&@1=i^*H(xYfC}f z68M-?;~x6$WdFw0AU)w$+$!bw;m!Y&ca+@VHY>H2DpVo1{G&Kivvz)xw6o3#et_TP z*H|Z;#}>2YEWuK2JsX9=*v0m<1MCnx%8s*>Y@D5C7uY5C1-rrSu=|{H8+ULI_wgWa zQ_M(^bWnxD6=sK^DrL^vR2mdza%EVLPsGr30HXu zKge&(RKs-pcT4%dtbm{Yku19pnF%LzA2O4{OUk*aqF5FBBr$Ci64PQ)K&#a%RaI4L zv)QDYrb!D53Z#XFg;KlSE-fl5k`@;iOG_X#W#Di)q)w+(T3T8vEh{UNmY0`HD=I3a zE|*K{cDtn>k4IWrSt<2;z0#_xDrt3fwX~+DMp|22E7c)0W#IGqq<+6&T31&mt*@__ zHZ(Ly8-qbnA`5fGQ2_)w8uz3#>a}s!)I+e-bb?WrY2UY5-!;wZOU%IcJyZYpP3xAL)-N+{SkCuh2aT_o23GSUq=Y(~eqh!ISHL#ZH?M^4 zWz-p3W$th3HVr3CBWp~fJ<^af*2}NLf%2-`+a-!3;atL)M9>p+sN2p~!#Er!u( zIArio@`qRc27ZHt9yEGa{SE^1X?{}or|R3v5v9aJZV_^euB4aQdOnwLfdek*|2nXZ z=2slks4@H9ZH0Dzi7bxi&SZ_a-+c z`_n@M$-zuSpZ7y-P9Nz@Z|LuZMxmX)WdD$!9@aO>UHz$bveTi&a3j>7tf2vt0ry>ua?grOj+5&fH z4tKBoO}~(b)0HQl48BHF{Qk zPGiRN-JfZkzCq|4?5Erhm$8HLT(;Gi=zpx`)OM?Dc9iBqMlRi2+&KH?uFfT0`n&~m zx|ZpF;j{e2udCjWevS z4x@Uv+o<1D-WdGHgUr(y>3(uLeUO)U5VlhEbR)QN`qLJ!?zS4CJyp=nh20fqXU3!5 zHrwblt7|HpoEJ{6IS}}deWW)HCWoJN;?uUynrd|ggY@;OMtbKykr*6Fb?2|_tfThe zKYf1%&%Qr;_}A(z7%6;Npv;6a1Ikn=IQyLrWg3*|lM)1*pah^)Ly1H2!q>Np=Fgs* z$}~nV5iaN@_6T;Kqw0@?%tE}|x{M2_{zx_BS07JTbDOD!__n@cJpMSNYTAOOXiq5x=fufn3le1T2?;S49e%3R=k87 z^*66rXfx@6B(Z+EK1==N^8aap?(hYj&4t-n8#oJ$fjDc6f-#z<&Ikleup40^z3NY_zPziMO*En#6j@9E$ajJrwI3K&-EaKJS5b;BC+kUI%^PRZs^ng0aZ#7r~E(43fd5a(@f?zI)cbHjVAvhT<0AnEj-kL!8(~={kf^OKhvMF+8@OP%> JXWaV8@pq5sy_Wz0 delta 3917 zcma)93viUx6~5=5-MjlQ`4@IK$p&KJ&x;UDAiGJh5FUoG0#XA)Yy_<7Cix|6v%9ca zNzppXQk2SIYy6!S`*23uX&H;wWWf=q)+uT&tuO3MA2?K`*4D>h%b=|=wLSO#$!5`E z+MVQl_wn6xzI*Ot@9x~`*tyej-weO=7`ybdV5DKO+l8lOYs=`?FQeh9p<+WFnQDVf zSuvSn9~qBM=8E#%MRXQb+{1D&AL--aR z!Griv&gZxbdpv1#D7|nxzREmqEP>v^=z#EICCKI$V|c(cgC3j?RkGe(nlFY+Gz{9U z#V!oMKy*t$j_)FxU$WMigWF>XK33)^b8|e$@MAoe^Oe1gMNaNupaq;jko%;Wy9>oH z85i$ki%qWPbY9M>4bSI%>)t_ak;?%9yrpGq1(a#jgX{of2Q2TQnIrezo;z^U&jGXR z0#@H+ukm76?y8=b+#bXe4A0>iJV64U#br}buwcLq*RAc0Yz(zFaW5CFgc`b6MIt+* zJ9rULeX1L}A{)9wT&CH{&M|fl&huV=+M3pX2D6zGYyaqfa%Ts3gC@#d!H)Tmt+O5; z3wdih)<@dABF5^@6_Fba>&>xp>)&Iwg_E2&K1pPaVl3?})|tte$;;})* znyzpK>+9j}a%<%i_vJo$0-&P7sEQ_rVm*my+^jM>R<*C66K-v-uOF^(1>3B(N6M@> zj+A<5UmE?@BSGu2!@)puIANxGV*OS1>6xzJ!g|OCtPMx%Yw9kcCwp%-`_e-_Hul_} zOqeuAI`EH|Y5c5-@vk4Qx4wGBYn?t^s$vWzoST`M> zLG+pf`y5`mJrU0`ynyHNEUnIIT;)VsUsRSW3z8MYI{{DOw{Qga;U3(DchY9QfFIyH z_-Fh*p1|MW^Y{!N#T-70KgNggyQA5aSm8hhL1{{*DUqgFnt(LcgL^uhvLLKC_XOG< z=!Q!o-plYGbYT8UJLeSs0e_1x<8eAf&)`#ZfF8%6;EyQI_wd_zKi-QM@uSgfH)f>2 z%SQCeUY|76q?sy>R~lWKB59^b*_#x0FY8X=96>yRZ>a-|v1&u)%?!I$Tfkc0RJ zK8sIMDjvfh;77P0E&K-FgS+wX_%8mDCh{wM8oxi9?UZsgDOZyT(qw`(nIH`UGWAYU zsY$&Wa8)G1niQ;ouKG!_22)hgmaG=ctt^SwK-j8PgF{);tpVl1*4<1CyO-nJGJT}( zJv@!CDB<5v|Q)E_e@*!7oR%n;-+vv3b+oZcSsFKC5!NeQkEE z?d*(nbVXK#o0=9hhG=Zdbaw;YME{E!ZVWfuE~Vu{3p_>SnqA=STZrxV8r^(C_yyQuQbLITjtfK zYE$b5so6C8V<{PB+ifIY^5tY}`v$h8qdNwZsjK@2&G--rGy89=?Mu+W$)uHU4#mqi zH)q1}f}D)!NiNM&r1i_M%ylw9oa1N4hvI4S5{{c>TjN7y7s!^T_~)EDs|I=$(BkQp ztz9y|>yyd25$3$WOZ(>LP`sd14vo{F&fjD{`WnO=;6`|aALS451YgMw_!z$qC$I_j z&~ca#0$&-)?#l2F*`i9h*=QThs;rk{?YBeWM!u@CDb(1cc9h*IV?m0xwmp(>XG_P6 zq`1<4anzO4rXTm5ZzTQW&TLXfda5h=EHnHmW>^v%-8u{8Gut?vOco}#MWvG(B~|`c z28fx$+br)BK0m*wgIm%Eyx!n~Asn#0^#Adc!XX!R7uqB%%yHY=0Q zNXs~DHa$)!cW;HQtiajC6linK3FebKOD*T8)=UOvwe&{1JTIfhDRq8|o8K-f?xePf zpdr`zMAg;UDqnmBCyO?KI+>w3bx5D`KQc{cb@@HBT6$`eZ{s$(dz=G~$sqaB6VdWK z>1TdWXA=iSFFYudlTPOkj~r0&u5Zr28pHg+&)l?HjBz;5_&?$JX!dEy9e=)!3t&eX zJ35m6sr&8~^v|IJ6JOUbSD{t$ZWn+pMCuZg%q+eR2PbZ_I7| zo53^cdG2>Ev{Bg4b-%04uDci8s4cP4v(&~Z%WN#V+D5(IM(=VPr*_ylZH0}#h>iYh zYz(ZlvAATFT_{;?W9hXLt(x~v3CfnqPFk+_w`KSu9_Dj-6`#TV+`~CsfOGIJoPm?@ z8vGiL!Ba2>kH7)=4%`oWVHeyEDYzASVH2!}YhgJof-ua5DwqL&@Bn8Q=;y(^>^y3EnVbQO!N%Se4FM0_x;GZX=s-aPQNnxGnQP?1ER(PfOqQcqYCWUjwW`*@) zlfpS-qrzHoqrw`|t*}~rL1C4+L1CrnQfP<`3TKJ+4wfNhGsX3)p+c-vc!gN2uv~O1 zoFT4LI9+^RVVPK?Fet87SSnU4ED@^|7K@b%1L7Kmei2dV6Dt%>6CDbtisg>gGBsY& qt{QZ4wZbB?OyLx7%=ce4Hyzyo diff --git a/functions_db.py b/functions_db.py index 6d6bb44f75..ad704428e1 100644 --- a/functions_db.py +++ b/functions_db.py @@ -179,7 +179,10 @@ def create_object(odat): new_object.home = odat["location"] new_object.save() - new_object.move_to(odat['location']) + + # Rooms have a NULL location. + if not new_object.is_room(): + new_object.move_to(odat['location']) return new_object